summaryrefslogtreecommitdiff
path: root/doc/classes/JSON
diff options
context:
space:
mode:
authorFlorian Frank <flori@ping.de>2011-12-24 15:52:14 +0100
committerFlorian Frank <flori@ping.de>2011-12-24 15:52:14 +0100
commit7a8fce246e79f9791f26395b81468e3fe1a694a0 (patch)
treef3f33fdd73ae86405732ca66aa2ca523881d2b91 /doc/classes/JSON
parent2a23caa7918c4ea7d2ec6a9eae4df8f5db31508e (diff)
downloadjson-7a8fce246e79f9791f26395b81468e3fe1a694a0.tar.gz
generated documentation
Diffstat (limited to 'doc/classes/JSON')
-rw-r--r--doc/classes/JSON/CircularDatastructure.html75
-rw-r--r--doc/classes/JSON/Ext.html94
-rw-r--r--doc/classes/JSON/Ext/Generator.html96
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods.html125
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/Array.html127
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/Bignum.html125
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/FalseClass.html125
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/Fixnum.html125
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/Float.html125
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/Hash.html128
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/NilClass.html124
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/Object.html133
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/String.html281
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/String/Extend.html129
-rw-r--r--doc/classes/JSON/Ext/Generator/GeneratorMethods/TrueClass.html124
-rw-r--r--doc/classes/JSON/Ext/Generator/State.html1684
-rw-r--r--doc/classes/JSON/Ext/Parser.html415
-rw-r--r--doc/classes/JSON/GeneratorError.html81
-rw-r--r--doc/classes/JSON/JSONError.html81
-rw-r--r--doc/classes/JSON/MissingUnicodeSupport.html82
-rw-r--r--doc/classes/JSON/NestingError.html82
-rw-r--r--doc/classes/JSON/ParserError.html81
-rw-r--r--doc/classes/JSON/Pure.html96
-rw-r--r--doc/classes/JSON/Pure/Generator.html85
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods.html120
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/Array.html129
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/FalseClass.html122
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/Float.html140
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/Hash.html130
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/Integer.html122
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/NilClass.html121
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/Object.html125
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/String.html283
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/String/Extend.html132
-rw-r--r--doc/classes/JSON/Pure/Generator/GeneratorMethods/TrueClass.html121
-rw-r--r--doc/classes/JSON/Pure/Generator/State.html748
-rw-r--r--doc/classes/JSON/Pure/Parser.html620
37 files changed, 7536 insertions, 0 deletions
diff --git a/doc/classes/JSON/CircularDatastructure.html b/doc/classes/JSON/CircularDatastructure.html
new file mode 100644
index 0000000..a57cddd
--- /dev/null
+++ b/doc/classes/JSON/CircularDatastructure.html
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::CircularDatastructure</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::CircularDatastructure
+
+ <span class="parent">&lt;
+
+ <a href="NestingError.html">JSON::NestingError</a>
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/common_rb.html">lib/json/common.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext.html b/doc/classes/JSON/Ext.html
new file mode 100644
index 0000000..cda13e9
--- /dev/null
+++ b/doc/classes/JSON/Ext.html
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/ext_rb.html">lib/json/ext.rb</a></li>
+
+ <li><a href="../../files/ext/json/ext/parser/parser_c.html">ext/json/ext/parser/parser.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This module holds all the modules/classes that implement JSON’s
+functionality as C extensions.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="Ext/Generator.html">JSON::Ext::Generator</a>
+ </li>
+
+ <li>
+ <span class="type">CLASS</span>
+ <a href="Ext/Parser.html">JSON::Ext::Parser</a>
+ </li>
+
+ </ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator.html b/doc/classes/JSON/Ext/Generator.html
new file mode 100644
index 0000000..cdff971
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator.html
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../files/ext/json/ext/parser/parser_c.html">ext/json/ext/parser/parser.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This is the <a href="../../JSON.html">JSON</a> generator implemented as a C
+extension. It can be configured to be used by setting</p>
+
+<pre>JSON.generator = JSON::Ext::Generator</pre>
+
+<p>with the method generator= in <a href="../../JSON.html">JSON</a>.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="Generator/GeneratorMethods.html">JSON::Ext::Generator::GeneratorMethods</a>
+ </li>
+
+ <li>
+ <span class="type">CLASS</span>
+ <a href="Generator/State.html">JSON::Ext::Generator::State</a>
+ </li>
+
+ </ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods.html
new file mode 100644
index 0000000..a228ad2
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods.html
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Array.html">JSON::Ext::Generator::GeneratorMethods::Array</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Bignum.html">JSON::Ext::Generator::GeneratorMethods::Bignum</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/FalseClass.html">JSON::Ext::Generator::GeneratorMethods::FalseClass</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Fixnum.html">JSON::Ext::Generator::GeneratorMethods::Fixnum</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Float.html">JSON::Ext::Generator::GeneratorMethods::Float</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Hash.html">JSON::Ext::Generator::GeneratorMethods::Hash</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/NilClass.html">JSON::Ext::Generator::GeneratorMethods::NilClass</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Object.html">JSON::Ext::Generator::GeneratorMethods::Object</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/String.html">JSON::Ext::Generator::GeneratorMethods::String</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/TrueClass.html">JSON::Ext::Generator::GeneratorMethods::TrueClass</a>
+ </li>
+
+ </ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/Array.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Array.html
new file mode 100644
index 0000000..e98d4fe
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Array.html
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::Array</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::Array
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(state = nil)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string containing a <a
+href="../../../../JSON.html">JSON</a> array, that is generated from this <a
+href="Array.html">Array</a> instance. <em>state</em> is a JSON::State
+object, that can also be used to configure the produced <a
+href="../../../../JSON.html">JSON</a> string output further.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mArray_to_json(int argc, VALUE *argv, VALUE self) {
+ GENERATE_JSON(array);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/Bignum.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Bignum.html
new file mode 100644
index 0000000..32860f5
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Bignum.html
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::Bignum</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::Bignum
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string representation
+for this Integer number.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mBignum_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(bignum);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/FalseClass.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/FalseClass.html
new file mode 100644
index 0000000..331cde5
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/FalseClass.html
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::FalseClass</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::FalseClass
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string for false:
+‘false’.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mFalseClass_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(false);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/Fixnum.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Fixnum.html
new file mode 100644
index 0000000..279cbb8
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Fixnum.html
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::Fixnum</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::Fixnum
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string representation
+for this Integer number.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mFixnum_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(fixnum);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/Float.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Float.html
new file mode 100644
index 0000000..95445d9
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Float.html
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::Float</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::Float
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string representation
+for this <a href="Float.html">Float</a> number.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mFloat_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(float);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/Hash.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Hash.html
new file mode 100644
index 0000000..a7384d9
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Hash.html
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::Hash</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::Hash
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(state = nil)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string containing a <a
+href="../../../../JSON.html">JSON</a> object, that is generated from this
+<a href="Hash.html">Hash</a> instance. <em>state</em> is a JSON::State
+object, that can also be used to configure the produced <a
+href="../../../../JSON.html">JSON</a> string output further.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mHash_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(object);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/NilClass.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/NilClass.html
new file mode 100644
index 0000000..132aa3c
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/NilClass.html
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::NilClass</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::NilClass
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string for nil: ‘null’.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mNilClass_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(null);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/Object.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Object.html
new file mode 100644
index 0000000..a2d5565
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/Object.html
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::Object</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::Object
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Converts this object to a string (calling to_s), converts it to a <a
+href="../../../../JSON.html">JSON</a> string, and returns the result. This
+is a fallback, if no special method <a
+href="Object.html#method-i-to_json">#to_json</a> was defined for some
+object.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mObject_to_json(int argc, VALUE *argv, VALUE self)
+{
+ VALUE state;
+ VALUE string = rb_funcall(self, i_to_s, 0);
+ rb_scan_args(argc, argv, &quot;01&quot;, &amp;state);
+ Check_Type(string, T_STRING);
+ state = cState_from_state_s(cState, state);
+ return cState_partial_generate(state, string);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/String.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/String.html
new file mode 100644
index 0000000..dbbb90b
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/String.html
@@ -0,0 +1,281 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::String</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::String
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="String/Extend.html">JSON::Ext::Generator::GeneratorMethods::String::Extend</a>
+ </li>
+
+ </ul>
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>I</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-included">included</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-to_json_raw">to_json_raw</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-to_json_raw_object">to_json_raw_object</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Class Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-included">
+
+ <a name="method-c-included"></a><b>String.included(modul)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Extends <em>modul</em> with the <a
+href="String/Extend.html">String::Extend</a> module.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-included_source')" id="l_method-c-included_source">show</a>
+
+ </p>
+ <div id="method-c-included_source" class="dyn-source">
+ <pre>static VALUE mString_included_s(VALUE self, VALUE modul) {
+ VALUE result = rb_funcall(modul, i_extend, 1, mString_Extend);
+ return result;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string should be encoded with UTF-8 A call to this method returns a <a
+href="../../../../JSON.html">JSON</a> string encoded with UTF16 big endian
+characters as u????.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mString_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(string);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json_raw">
+
+ <a name="method-i-to_json_raw"></a><b>to_json_raw(*args)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This method creates a <a href="../../../../JSON.html">JSON</a> text from
+the result of a call to <a
+href="String.html#method-i-to_json_raw_object">#to_json_raw_object</a> of
+this <a href="String.html">String</a>.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_raw_source')" id="l_method-i-to_json_raw_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_raw_source" class="dyn-source">
+ <pre>static VALUE mString_to_json_raw(int argc, VALUE *argv, VALUE self)
+{
+ VALUE obj = mString_to_json_raw_object(self);
+ Check_Type(obj, T_HASH);
+ return mHash_to_json(argc, argv, obj);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json_raw_object">
+
+ <a name="method-i-to_json_raw_object"></a><b>to_json_raw_object()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This method creates a raw object hash, that can be nested into other data
+structures and will be generated as a raw string. This method should be
+used, if you want to convert raw strings to <a
+href="../../../../JSON.html">JSON</a> instead of UTF-8 strings, e. g.
+binary data.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_raw_object_source')" id="l_method-i-to_json_raw_object_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_raw_object_source" class="dyn-source">
+ <pre>static VALUE mString_to_json_raw_object(VALUE self)
+{
+ VALUE ary;
+ VALUE result = rb_hash_new();
+ rb_hash_aset(result, rb_funcall(mJSON, i_create_id, 0), rb_class_name(rb_obj_class(self)));
+ ary = rb_funcall(self, i_unpack, 1, rb_str_new2(&quot;C*&quot;));
+ rb_hash_aset(result, rb_str_new2(&quot;raw&quot;), ary);
+ return result;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/String/Extend.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/String/Extend.html
new file mode 100644
index 0000000..aea6758
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/String/Extend.html
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::String::Extend</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::String::Extend
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>J</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-json_create">json_create</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-json_create">
+
+ <a name="method-i-json_create"></a><b>json_create(o)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Raw Strings are <a href="../../../../../JSON.html">JSON</a> Objects (the
+raw bytes are stored in an array for the key “raw”). The Ruby <a
+href="../String.html">String</a> can be created by this module method.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-json_create_source')" id="l_method-i-json_create_source">show</a>
+
+ </p>
+ <div id="method-i-json_create_source" class="dyn-source">
+ <pre>static VALUE mString_Extend_json_create(VALUE self, VALUE o)
+{
+ VALUE ary;
+ Check_Type(o, T_HASH);
+ ary = rb_hash_aref(o, rb_str_new2(&quot;raw&quot;));
+ return rb_funcall(ary, i_pack, 1, rb_str_new2(&quot;C*&quot;));
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/GeneratorMethods/TrueClass.html b/doc/classes/JSON/Ext/Generator/GeneratorMethods/TrueClass.html
new file mode 100644
index 0000000..d9ac60c
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/GeneratorMethods/TrueClass.html
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::GeneratorMethods::TrueClass</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Ext::Generator::GeneratorMethods::TrueClass
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json(*)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string for true: ‘true’.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre>static VALUE mTrueClass_to_json(int argc, VALUE *argv, VALUE self)
+{
+ GENERATE_JSON(true);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Generator/State.html b/doc/classes/JSON/Ext/Generator/State.html
new file mode 100644
index 0000000..bcef751
--- /dev/null
+++ b/doc/classes/JSON/Ext/Generator/State.html
@@ -0,0 +1,1684 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Generator::State</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::Ext::Generator::State
+
+ <span class="parent">&lt;
+
+ Object
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../files/ext/json/ext/generator/generator_c.html">ext/json/ext/generator/generator.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>#</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-5B-5D">[]</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>A</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-allow_nan-3F">allow_nan?</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-array_nl">array_nl</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-array_nl-3D">array_nl=</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-ascii_only-3F">ascii_only?</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>B</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-buffer_initial_length">buffer_initial_length</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-buffer_initial_length-3D">buffer_initial_length=</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>C</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-check_circular-3F">check_circular?</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-configure">configure</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>D</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-depth">depth</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-depth-3D">depth=</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>F</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-from_state">from_state</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>G</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-generate">generate</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>I</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-indent">indent</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-indent-3D">indent=</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-initialize_copy">initialize_copy</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>M</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-max_nesting">max_nesting</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-max_nesting-3D">max_nesting=</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-merge">merge</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>N</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-new">new</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>O</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-object_nl">object_nl</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-object_nl-3D">object_nl=</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>Q</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-quirks_mode">quirks_mode</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-quirks_mode-3D">quirks_mode=</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-quirks_mode-3F">quirks_mode?</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>S</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-space">space</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-space-3D">space=</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-space_before">space_before</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-space_before-3D">space_before=</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_h">to_h</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Class Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-from_state">
+
+ <a name="method-c-from_state"></a><b>from_state(opts)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Creates a <a href="State.html">State</a> object from <em>opts</em>, which
+ought to be Hash to create a new <a href="State.html">State</a> instance
+configured by <em>opts</em>, something else to create an unconfigured
+instance. If <em>opts</em> is a <a href="State.html">State</a> object, it
+is just returned.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-from_state_source')" id="l_method-c-from_state_source">show</a>
+
+ </p>
+ <div id="method-c-from_state_source" class="dyn-source">
+ <pre>static VALUE cState_from_state_s(VALUE self, VALUE opts)
+{
+ if (rb_obj_is_kind_of(opts, self)) {
+ return opts;
+ } else if (rb_obj_is_kind_of(opts, rb_cHash)) {
+ return rb_funcall(self, i_new, 1, opts);
+ } else {
+ if (NIL_P(CJSON_SAFE_STATE_PROTOTYPE)) {
+ CJSON_SAFE_STATE_PROTOTYPE = rb_const_get(mJSON, i_SAFE_STATE_PROTOTYPE);
+ }
+ return rb_funcall(CJSON_SAFE_STATE_PROTOTYPE, i_dup, 0);
+ }
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-new">
+
+ <a name="method-c-new"></a><b>new(opts = {})
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Instantiates a new <a href="State.html">State</a> object, configured by
+<em>opts</em>.</p>
+
+<p><em>opts</em> can have the following keys:</p>
+<ul><li>
+<p><strong>indent</strong>: a string used to indent levels (default: ”),</p>
+</li><li>
+<p><strong>space</strong>: a string that is put after, a : or , delimiter
+(default: ”),</p>
+</li><li>
+<p><strong><a
+href="State.html#method-i-space_before">#space_before</a></strong>: a
+string that is put before a : pair delimiter (default: ”),</p>
+</li><li>
+<p><strong><a href="State.html#method-i-object_nl">#object_nl</a></strong>: a
+string that is put at the end of a <a href="../../../JSON.html">JSON</a>
+object (default: ”),</p>
+</li><li>
+<p><strong><a href="State.html#method-i-array_nl">#array_nl</a></strong>: a
+string that is put at the end of a <a href="../../../JSON.html">JSON</a>
+array (default: ”),</p>
+</li><li>
+<p><strong>allow_nan</strong>: true if NaN, Infinity, and -Infinity should be
+generated, otherwise an exception is thrown, if these values are
+encountered. This options defaults to false.</p>
+</li><li>
+<p><strong><a
+href="State.html#method-i-quirks_mode">#quirks_mode</a></strong>: Enables
+<a href="State.html#method-i-quirks_mode">#quirks_mode</a> for parser, that
+is for example generating single <a href="../../../JSON.html">JSON</a>
+values instead of documents is possible.</p>
+</li><li>
+<p><strong><a
+href="State.html#method-i-buffer_initial_length">#buffer_initial_length</a></strong>:
+sets the initial length of the generator’s internal buffer.</p>
+</li></ul>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-new_source')" id="l_method-c-new_source">show</a>
+
+ </p>
+ <div id="method-c-new_source" class="dyn-source">
+ <pre>static VALUE cState_initialize(int argc, VALUE *argv, VALUE self)
+{
+ VALUE opts;
+ GET_STATE(self);
+ state-&gt;max_nesting = 19;
+ state-&gt;buffer_initial_length = FBUFFER_INITIAL_LENGTH_DEFAULT;
+ rb_scan_args(argc, argv, &quot;01&quot;, &amp;opts);
+ if (!NIL_P(opts)) cState_configure(self, opts);
+ return self;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-5B-5D">
+
+ <a name="method-i-5B-5D"></a><b>[](name)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Return the value returned by method <code>name</code>.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-5B-5D_source')" id="l_method-i-5B-5D_source">show</a>
+
+ </p>
+ <div id="method-i-5B-5D_source" class="dyn-source">
+ <pre>static VALUE cState_aref(VALUE self, VALUE name)
+{
+ GET_STATE(self);
+ if (RTEST(rb_funcall(self, i_respond_to_p, 1, name))) {
+ return rb_funcall(self, i_send, 1, name);
+ } else {
+ return Qnil;
+ }
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-allow_nan-3F">
+
+ <a name="method-i-allow_nan-3F"></a><b>allow_nan?
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if NaN, Infinity, and -Infinity should be generated,
+otherwise returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-allow_nan-3F_source')" id="l_method-i-allow_nan-3F_source">show</a>
+
+ </p>
+ <div id="method-i-allow_nan-3F_source" class="dyn-source">
+ <pre>static VALUE cState_allow_nan_p(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;allow_nan ? Qtrue : Qfalse;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-array_nl">
+
+ <a name="method-i-array_nl"></a><b>array_nl()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is put at the end of a line that holds a <a
+href="../../../JSON.html">JSON</a> array.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-array_nl_source')" id="l_method-i-array_nl_source">show</a>
+
+ </p>
+ <div id="method-i-array_nl_source" class="dyn-source">
+ <pre>static VALUE cState_array_nl(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;array_nl ? rb_str_new2(state-&gt;array_nl) : rb_str_new2(&quot;&quot;);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-array_nl-3D">
+
+ <a name="method-i-array_nl-3D"></a><b>array_nl=(array_nl)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is put at the end of a line that holds a <a
+href="../../../JSON.html">JSON</a> array.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-array_nl-3D_source')" id="l_method-i-array_nl-3D_source">show</a>
+
+ </p>
+ <div id="method-i-array_nl-3D_source" class="dyn-source">
+ <pre>static VALUE cState_array_nl_set(VALUE self, VALUE array_nl)
+{
+ unsigned long len;
+ GET_STATE(self);
+ Check_Type(array_nl, T_STRING);
+ len = RSTRING_LEN(array_nl);
+ if (len == 0) {
+ if (state-&gt;array_nl) {
+ ruby_xfree(state-&gt;array_nl);
+ state-&gt;array_nl = NULL;
+ }
+ } else {
+ if (state-&gt;array_nl) ruby_xfree(state-&gt;array_nl);
+ state-&gt;array_nl = strdup(RSTRING_PTR(array_nl));
+ state-&gt;array_nl_len = len;
+ }
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-ascii_only-3F">
+
+ <a name="method-i-ascii_only-3F"></a><b>ascii_only?
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if NaN, Infinity, and -Infinity should be generated,
+otherwise returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-ascii_only-3F_source')" id="l_method-i-ascii_only-3F_source">show</a>
+
+ </p>
+ <div id="method-i-ascii_only-3F_source" class="dyn-source">
+ <pre>static VALUE cState_ascii_only_p(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;ascii_only ? Qtrue : Qfalse;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-buffer_initial_length">
+
+ <a name="method-i-buffer_initial_length"></a><b>buffer_initial_length
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This integer returns the current inital length of the buffer.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-buffer_initial_length_source')" id="l_method-i-buffer_initial_length_source">show</a>
+
+ </p>
+ <div id="method-i-buffer_initial_length_source" class="dyn-source">
+ <pre>static VALUE cState_buffer_initial_length(VALUE self)
+{
+ GET_STATE(self);
+ return LONG2FIX(state-&gt;buffer_initial_length);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-buffer_initial_length-3D">
+
+ <a name="method-i-buffer_initial_length-3D"></a><b>buffer_initial_length=(length)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This sets the initial length of the buffer to <code>length</code>, if
+<code>length</code> &gt; 0, otherwise its value isn’t changed.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-buffer_initial_length-3D_source')" id="l_method-i-buffer_initial_length-3D_source">show</a>
+
+ </p>
+ <div id="method-i-buffer_initial_length-3D_source" class="dyn-source">
+ <pre>static VALUE cState_buffer_initial_length_set(VALUE self, VALUE buffer_initial_length)
+{
+ long initial_length;
+ GET_STATE(self);
+ Check_Type(buffer_initial_length, T_FIXNUM);
+ initial_length = FIX2LONG(buffer_initial_length);
+ if (initial_length &gt; 0) {
+ state-&gt;buffer_initial_length = initial_length;
+ }
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-check_circular-3F">
+
+ <a name="method-i-check_circular-3F"></a><b>check_circular?
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if circular data structures should be checked, otherwise
+returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-check_circular-3F_source')" id="l_method-i-check_circular-3F_source">show</a>
+
+ </p>
+ <div id="method-i-check_circular-3F_source" class="dyn-source">
+ <pre>static VALUE cState_check_circular_p(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;max_nesting ? Qtrue : Qfalse;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-configure">
+
+ <a name="method-i-configure"></a><b>configure(opts)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Configure this <a href="State.html">State</a> instance with the Hash
+<em>opts</em>, and return itself.</p>
+ </div>
+
+
+
+ <div class="aka">
+ Also aliased as: <a href="State.html#method-i-merge">merge</a>
+ </div>
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-configure_source')" id="l_method-i-configure_source">show</a>
+
+ </p>
+ <div id="method-i-configure_source" class="dyn-source">
+ <pre>static VALUE cState_configure(VALUE self, VALUE opts)
+{
+ VALUE tmp;
+ GET_STATE(self);
+ tmp = rb_convert_type(opts, T_HASH, &quot;Hash&quot;, &quot;to_hash&quot;);
+ if (NIL_P(tmp)) tmp = rb_convert_type(opts, T_HASH, &quot;Hash&quot;, &quot;to_h&quot;);
+ if (NIL_P(tmp)) {
+ rb_raise(rb_eArgError, &quot;opts has to be hash like or convertable into a hash&quot;);
+ }
+ opts = tmp;
+ tmp = rb_hash_aref(opts, ID2SYM(i_indent));
+ if (RTEST(tmp)) {
+ unsigned long len;
+ Check_Type(tmp, T_STRING);
+ len = RSTRING_LEN(tmp);
+ state-&gt;indent = fstrndup(RSTRING_PTR(tmp), len);
+ state-&gt;indent_len = len;
+ }
+ tmp = rb_hash_aref(opts, ID2SYM(i_space));
+ if (RTEST(tmp)) {
+ unsigned long len;
+ Check_Type(tmp, T_STRING);
+ len = RSTRING_LEN(tmp);
+ state-&gt;space = fstrndup(RSTRING_PTR(tmp), len);
+ state-&gt;space_len = len;
+ }
+ tmp = rb_hash_aref(opts, ID2SYM(i_space_before));
+ if (RTEST(tmp)) {
+ unsigned long len;
+ Check_Type(tmp, T_STRING);
+ len = RSTRING_LEN(tmp);
+ state-&gt;space_before = fstrndup(RSTRING_PTR(tmp), len);
+ state-&gt;space_before_len = len;
+ }
+ tmp = rb_hash_aref(opts, ID2SYM(i_array_nl));
+ if (RTEST(tmp)) {
+ unsigned long len;
+ Check_Type(tmp, T_STRING);
+ len = RSTRING_LEN(tmp);
+ state-&gt;array_nl = fstrndup(RSTRING_PTR(tmp), len);
+ state-&gt;array_nl_len = len;
+ }
+ tmp = rb_hash_aref(opts, ID2SYM(i_object_nl));
+ if (RTEST(tmp)) {
+ unsigned long len;
+ Check_Type(tmp, T_STRING);
+ len = RSTRING_LEN(tmp);
+ state-&gt;object_nl = fstrndup(RSTRING_PTR(tmp), len);
+ state-&gt;object_nl_len = len;
+ }
+ tmp = ID2SYM(i_max_nesting);
+ state-&gt;max_nesting = 19;
+ if (option_given_p(opts, tmp)) {
+ VALUE max_nesting = rb_hash_aref(opts, tmp);
+ if (RTEST(max_nesting)) {
+ Check_Type(max_nesting, T_FIXNUM);
+ state-&gt;max_nesting = FIX2LONG(max_nesting);
+ } else {
+ state-&gt;max_nesting = 0;
+ }
+ }
+ tmp = ID2SYM(i_depth);
+ state-&gt;depth = 0;
+ if (option_given_p(opts, tmp)) {
+ VALUE depth = rb_hash_aref(opts, tmp);
+ if (RTEST(depth)) {
+ Check_Type(depth, T_FIXNUM);
+ state-&gt;depth = FIX2LONG(depth);
+ } else {
+ state-&gt;depth = 0;
+ }
+ }
+ tmp = ID2SYM(i_buffer_initial_length);
+ if (option_given_p(opts, tmp)) {
+ VALUE buffer_initial_length = rb_hash_aref(opts, tmp);
+ if (RTEST(buffer_initial_length)) {
+ long initial_length;
+ Check_Type(buffer_initial_length, T_FIXNUM);
+ initial_length = FIX2LONG(buffer_initial_length);
+ if (initial_length &gt; 0) state-&gt;buffer_initial_length = initial_length;
+ }
+ }
+ tmp = rb_hash_aref(opts, ID2SYM(i_allow_nan));
+ state-&gt;allow_nan = RTEST(tmp);
+ tmp = rb_hash_aref(opts, ID2SYM(i_ascii_only));
+ state-&gt;ascii_only = RTEST(tmp);
+ tmp = rb_hash_aref(opts, ID2SYM(i_quirks_mode));
+ state-&gt;quirks_mode = RTEST(tmp);
+ return self;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-depth">
+
+ <a name="method-i-depth"></a><b>depth
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This integer returns the current depth of data structure nesting.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-depth_source')" id="l_method-i-depth_source">show</a>
+
+ </p>
+ <div id="method-i-depth_source" class="dyn-source">
+ <pre>static VALUE cState_depth(VALUE self)
+{
+ GET_STATE(self);
+ return LONG2FIX(state-&gt;depth);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-depth-3D">
+
+ <a name="method-i-depth-3D"></a><b>depth=(depth)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This sets the maximum level of data structure nesting in the generated <a
+href="../../../JSON.html">JSON</a> to the integer depth, <a
+href="State.html#method-i-max_nesting">#max_nesting</a> = 0 if no maximum
+should be checked.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-depth-3D_source')" id="l_method-i-depth-3D_source">show</a>
+
+ </p>
+ <div id="method-i-depth-3D_source" class="dyn-source">
+ <pre>static VALUE cState_depth_set(VALUE self, VALUE depth)
+{
+ GET_STATE(self);
+ Check_Type(depth, T_FIXNUM);
+ state-&gt;depth = FIX2LONG(depth);
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-generate">
+
+ <a name="method-i-generate"></a><b>generate(obj)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Generates a valid <a href="../../../JSON.html">JSON</a> document from
+object <code>obj</code> and returns the result. If no valid <a
+href="../../../JSON.html">JSON</a> document can be created this method
+raises a <a href="../../GeneratorError.html">GeneratorError</a> exception.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-generate_source')" id="l_method-i-generate_source">show</a>
+
+ </p>
+ <div id="method-i-generate_source" class="dyn-source">
+ <pre>static VALUE cState_generate(VALUE self, VALUE obj)
+{
+ VALUE result = cState_partial_generate(self, obj);
+ VALUE re, args[2];
+ GET_STATE(self);
+ if (!state-&gt;quirks_mode) {
+ args[0] = rb_str_new2(&quot;\\A\\s*(?:\\[.*\\]|\\{.*\\})\\s*\\Z&quot;);
+ args[1] = CRegexp_MULTILINE;
+ re = rb_class_new_instance(2, args, rb_cRegexp);
+ if (NIL_P(rb_funcall(re, i_match, 1, result))) {
+ rb_raise(eGeneratorError, &quot;only generation of JSON objects or arrays allowed&quot;);
+ }
+ }
+ return result;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-indent">
+
+ <a name="method-i-indent"></a><b>indent()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is used to indent levels in the <a
+href="../../../JSON.html">JSON</a> text.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-indent_source')" id="l_method-i-indent_source">show</a>
+
+ </p>
+ <div id="method-i-indent_source" class="dyn-source">
+ <pre>static VALUE cState_indent(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;indent ? rb_str_new2(state-&gt;indent) : rb_str_new2(&quot;&quot;);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-indent-3D">
+
+ <a name="method-i-indent-3D"></a><b>indent=(indent)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is used to indent levels in the <a
+href="../../../JSON.html">JSON</a> text.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-indent-3D_source')" id="l_method-i-indent-3D_source">show</a>
+
+ </p>
+ <div id="method-i-indent-3D_source" class="dyn-source">
+ <pre>static VALUE cState_indent_set(VALUE self, VALUE indent)
+{
+ unsigned long len;
+ GET_STATE(self);
+ Check_Type(indent, T_STRING);
+ len = RSTRING_LEN(indent);
+ if (len == 0) {
+ if (state-&gt;indent) {
+ ruby_xfree(state-&gt;indent);
+ state-&gt;indent = NULL;
+ state-&gt;indent_len = 0;
+ }
+ } else {
+ if (state-&gt;indent) ruby_xfree(state-&gt;indent);
+ state-&gt;indent = strdup(RSTRING_PTR(indent));
+ state-&gt;indent_len = len;
+ }
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-initialize_copy">
+
+ <a name="method-i-initialize_copy"></a><b>initialize_copy(orig)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Initializes this object from orig if it to be duplicated/cloned and returns
+it.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-initialize_copy_source')" id="l_method-i-initialize_copy_source">show</a>
+
+ </p>
+ <div id="method-i-initialize_copy_source" class="dyn-source">
+ <pre>static VALUE cState_init_copy(VALUE obj, VALUE orig)
+{
+ JSON_Generator_State *objState, *origState;
+
+ Data_Get_Struct(obj, JSON_Generator_State, objState);
+ Data_Get_Struct(orig, JSON_Generator_State, origState);
+ if (!objState) rb_raise(rb_eArgError, &quot;unallocated JSON::State&quot;);
+
+ MEMCPY(objState, origState, JSON_Generator_State, 1);
+ objState-&gt;indent = fstrndup(origState-&gt;indent, origState-&gt;indent_len);
+ objState-&gt;space = fstrndup(origState-&gt;space, origState-&gt;space_len);
+ objState-&gt;space_before = fstrndup(origState-&gt;space_before, origState-&gt;space_before_len);
+ objState-&gt;object_nl = fstrndup(origState-&gt;object_nl, origState-&gt;object_nl_len);
+ objState-&gt;array_nl = fstrndup(origState-&gt;array_nl, origState-&gt;array_nl_len);
+ if (origState-&gt;array_delim) objState-&gt;array_delim = fbuffer_dup(origState-&gt;array_delim);
+ if (origState-&gt;object_delim) objState-&gt;object_delim = fbuffer_dup(origState-&gt;object_delim);
+ if (origState-&gt;object_delim2) objState-&gt;object_delim2 = fbuffer_dup(origState-&gt;object_delim2);
+ return obj;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-max_nesting">
+
+ <a name="method-i-max_nesting"></a><b>max_nesting
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This integer returns the maximum level of data structure nesting in the
+generated <a href="../../../JSON.html">JSON</a>, <a
+href="State.html#method-i-max_nesting">#max_nesting</a> = 0 if no maximum
+is checked.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-max_nesting_source')" id="l_method-i-max_nesting_source">show</a>
+
+ </p>
+ <div id="method-i-max_nesting_source" class="dyn-source">
+ <pre>static VALUE cState_max_nesting(VALUE self)
+{
+ GET_STATE(self);
+ return LONG2FIX(state-&gt;max_nesting);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-max_nesting-3D">
+
+ <a name="method-i-max_nesting-3D"></a><b>max_nesting=(depth)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This sets the maximum level of data structure nesting in the generated <a
+href="../../../JSON.html">JSON</a> to the integer depth, <a
+href="State.html#method-i-max_nesting">#max_nesting</a> = 0 if no maximum
+should be checked.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-max_nesting-3D_source')" id="l_method-i-max_nesting-3D_source">show</a>
+
+ </p>
+ <div id="method-i-max_nesting-3D_source" class="dyn-source">
+ <pre>static VALUE cState_max_nesting_set(VALUE self, VALUE depth)
+{
+ GET_STATE(self);
+ Check_Type(depth, T_FIXNUM);
+ return state-&gt;max_nesting = FIX2LONG(depth);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-merge">
+
+ <a name="method-i-merge"></a><b>merge</b>(p1)
+
+ </div>
+
+
+ <div class="description">
+
+ </div>
+
+
+
+
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-object_nl">
+
+ <a name="method-i-object_nl"></a><b>object_nl()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is put at the end of a line that holds a <a
+href="../../../JSON.html">JSON</a> object (or Hash).</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-object_nl_source')" id="l_method-i-object_nl_source">show</a>
+
+ </p>
+ <div id="method-i-object_nl_source" class="dyn-source">
+ <pre>static VALUE cState_object_nl(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;object_nl ? rb_str_new2(state-&gt;object_nl) : rb_str_new2(&quot;&quot;);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-object_nl-3D">
+
+ <a name="method-i-object_nl-3D"></a><b>object_nl=(object_nl)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is put at the end of a line that holds a <a
+href="../../../JSON.html">JSON</a> object (or Hash).</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-object_nl-3D_source')" id="l_method-i-object_nl-3D_source">show</a>
+
+ </p>
+ <div id="method-i-object_nl-3D_source" class="dyn-source">
+ <pre>static VALUE cState_object_nl_set(VALUE self, VALUE object_nl)
+{
+ unsigned long len;
+ GET_STATE(self);
+ Check_Type(object_nl, T_STRING);
+ len = RSTRING_LEN(object_nl);
+ if (len == 0) {
+ if (state-&gt;object_nl) {
+ ruby_xfree(state-&gt;object_nl);
+ state-&gt;object_nl = NULL;
+ }
+ } else {
+ if (state-&gt;object_nl) ruby_xfree(state-&gt;object_nl);
+ state-&gt;object_nl = strdup(RSTRING_PTR(object_nl));
+ state-&gt;object_nl_len = len;
+ }
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-quirks_mode">
+
+ <a name="method-i-quirks_mode"></a><b>quirks_mode?
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if quirks mode is enabled. Otherwise returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-quirks_mode_source')" id="l_method-i-quirks_mode_source">show</a>
+
+ </p>
+ <div id="method-i-quirks_mode_source" class="dyn-source">
+ <pre>static VALUE cState_quirks_mode_p(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;quirks_mode ? Qtrue : Qfalse;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-quirks_mode-3D">
+
+ <a name="method-i-quirks_mode-3D"></a><b>quirks_mode=(enable)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>If set to true, enables the <a
+href="State.html#method-i-quirks_mode">#quirks_mode</a> mode.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-quirks_mode-3D_source')" id="l_method-i-quirks_mode-3D_source">show</a>
+
+ </p>
+ <div id="method-i-quirks_mode-3D_source" class="dyn-source">
+ <pre>static VALUE cState_quirks_mode_set(VALUE self, VALUE enable)
+{
+ GET_STATE(self);
+ state-&gt;quirks_mode = RTEST(enable);
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-quirks_mode-3F">
+
+ <a name="method-i-quirks_mode-3F"></a><b>quirks_mode?
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if quirks mode is enabled. Otherwise returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-quirks_mode-3F_source')" id="l_method-i-quirks_mode-3F_source">show</a>
+
+ </p>
+ <div id="method-i-quirks_mode-3F_source" class="dyn-source">
+ <pre>static VALUE cState_quirks_mode_p(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;quirks_mode ? Qtrue : Qfalse;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-space">
+
+ <a name="method-i-space"></a><b>space()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is used to insert a space between the tokens in a <a
+href="../../../JSON.html">JSON</a> string.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-space_source')" id="l_method-i-space_source">show</a>
+
+ </p>
+ <div id="method-i-space_source" class="dyn-source">
+ <pre>static VALUE cState_space(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;space ? rb_str_new2(state-&gt;space) : rb_str_new2(&quot;&quot;);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-space-3D">
+
+ <a name="method-i-space-3D"></a><b>space=(space)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is used to insert a space between the tokens in a <a
+href="../../../JSON.html">JSON</a> string.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-space-3D_source')" id="l_method-i-space-3D_source">show</a>
+
+ </p>
+ <div id="method-i-space-3D_source" class="dyn-source">
+ <pre>static VALUE cState_space_set(VALUE self, VALUE space)
+{
+ unsigned long len;
+ GET_STATE(self);
+ Check_Type(space, T_STRING);
+ len = RSTRING_LEN(space);
+ if (len == 0) {
+ if (state-&gt;space) {
+ ruby_xfree(state-&gt;space);
+ state-&gt;space = NULL;
+ state-&gt;space_len = 0;
+ }
+ } else {
+ if (state-&gt;space) ruby_xfree(state-&gt;space);
+ state-&gt;space = strdup(RSTRING_PTR(space));
+ state-&gt;space_len = len;
+ }
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-space_before">
+
+ <a name="method-i-space_before"></a><b>space_before()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is used to insert a space before the ‘:’ in <a
+href="../../../JSON.html">JSON</a> objects.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-space_before_source')" id="l_method-i-space_before_source">show</a>
+
+ </p>
+ <div id="method-i-space_before_source" class="dyn-source">
+ <pre>static VALUE cState_space_before(VALUE self)
+{
+ GET_STATE(self);
+ return state-&gt;space_before ? rb_str_new2(state-&gt;space_before) : rb_str_new2(&quot;&quot;);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-space_before-3D">
+
+ <a name="method-i-space_before-3D"></a><b>space_before=(space_before)
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>This string is used to insert a space before the ‘:’ in <a
+href="../../../JSON.html">JSON</a> objects.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-space_before-3D_source')" id="l_method-i-space_before-3D_source">show</a>
+
+ </p>
+ <div id="method-i-space_before-3D_source" class="dyn-source">
+ <pre>static VALUE cState_space_before_set(VALUE self, VALUE space_before)
+{
+ unsigned long len;
+ GET_STATE(self);
+ Check_Type(space_before, T_STRING);
+ len = RSTRING_LEN(space_before);
+ if (len == 0) {
+ if (state-&gt;space_before) {
+ ruby_xfree(state-&gt;space_before);
+ state-&gt;space_before = NULL;
+ state-&gt;space_before_len = 0;
+ }
+ } else {
+ if (state-&gt;space_before) ruby_xfree(state-&gt;space_before);
+ state-&gt;space_before = strdup(RSTRING_PTR(space_before));
+ state-&gt;space_before_len = len;
+ }
+ return Qnil;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_h">
+
+ <a name="method-i-to_h"></a><b>to_h
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns the configuration instance variables as a hash, that can be passed
+to the configure method.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_h_source')" id="l_method-i-to_h_source">show</a>
+
+ </p>
+ <div id="method-i-to_h_source" class="dyn-source">
+ <pre>static VALUE cState_to_h(VALUE self)
+{
+ VALUE result = rb_hash_new();
+ GET_STATE(self);
+ rb_hash_aset(result, ID2SYM(i_indent), rb_str_new(state-&gt;indent, state-&gt;indent_len));
+ rb_hash_aset(result, ID2SYM(i_space), rb_str_new(state-&gt;space, state-&gt;space_len));
+ rb_hash_aset(result, ID2SYM(i_space_before), rb_str_new(state-&gt;space_before, state-&gt;space_before_len));
+ rb_hash_aset(result, ID2SYM(i_object_nl), rb_str_new(state-&gt;object_nl, state-&gt;object_nl_len));
+ rb_hash_aset(result, ID2SYM(i_array_nl), rb_str_new(state-&gt;array_nl, state-&gt;array_nl_len));
+ rb_hash_aset(result, ID2SYM(i_allow_nan), state-&gt;allow_nan ? Qtrue : Qfalse);
+ rb_hash_aset(result, ID2SYM(i_ascii_only), state-&gt;ascii_only ? Qtrue : Qfalse);
+ rb_hash_aset(result, ID2SYM(i_quirks_mode), state-&gt;quirks_mode ? Qtrue : Qfalse);
+ rb_hash_aset(result, ID2SYM(i_max_nesting), LONG2FIX(state-&gt;max_nesting));
+ rb_hash_aset(result, ID2SYM(i_depth), LONG2FIX(state-&gt;depth));
+ rb_hash_aset(result, ID2SYM(i_buffer_initial_length), LONG2FIX(state-&gt;buffer_initial_length));
+ return result;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Ext/Parser.html b/doc/classes/JSON/Ext/Parser.html
new file mode 100644
index 0000000..3a5d41b
--- /dev/null
+++ b/doc/classes/JSON/Ext/Parser.html
@@ -0,0 +1,415 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Ext::Parser</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::Ext::Parser
+
+ <span class="parent">&lt;
+
+ Object
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../files/ext/json/ext/parser/parser_c.html">ext/json/ext/parser/parser.c</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This is the <a href="../../JSON.html">JSON</a> parser implemented as a C
+extension. It can be configured to be used by setting</p>
+
+<pre>JSON.parser = JSON::Ext::Parser</pre>
+
+<p>with the method parser= in <a href="../../JSON.html">JSON</a>.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>N</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-new">new</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>P</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-parse">parse</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>Q</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-quirks_mode-3F">quirks_mode?</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>S</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-source">source</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Class Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-new">
+
+ <a name="method-c-new"></a><b>new(source, opts => {})
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Creates a new <a href="Parser.html">JSON::Ext::Parser</a> instance for the
+string <em>source</em>.</p>
+
+<p>Creates a new <a href="Parser.html">JSON::Ext::Parser</a> instance for the
+string <em>source</em>.</p>
+
+<p>It will be configured by the <em>opts</em> hash. <em>opts</em> can have the
+following keys:</p>
+
+<p><em>opts</em> can have the following keys:</p>
+<ul><li>
+<p><strong>max_nesting</strong>: The maximum depth of nesting allowed in the
+parsed data structures. Disable depth checking with :max_nesting =&gt;
+false|nil|0, it defaults to 19.</p>
+</li><li>
+<p><strong>allow_nan</strong>: If set to true, allow NaN, Infinity and
+-Infinity in defiance of RFC 4627 to be parsed by the <a
+href="Parser.html">Parser</a>. This option defaults to false.</p>
+</li><li>
+<p><strong>symbolize_names</strong>: If set to true, returns symbols for the
+names (keys) in a <a href="../../JSON.html">JSON</a> object. Otherwise
+strings are returned, which is also the default.</p>
+</li><li>
+<p><strong>create_additions</strong>: If set to false, the <a
+href="Parser.html">Parser</a> doesn’t create additions even if a matchin
+class and create_id was found. This option defaults to true.</p>
+</li><li>
+<p><strong>object_class</strong>: Defaults to Hash</p>
+</li><li>
+<p><strong>array_class</strong>: Defaults to Array</p>
+</li></ul>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-new_source')" id="l_method-c-new_source">show</a>
+
+ </p>
+ <div id="method-c-new_source" class="dyn-source">
+ <pre>static VALUE cParser_initialize(int argc, VALUE *argv, VALUE self)
+{
+ VALUE source, opts;
+ GET_PARSER_INIT;
+
+ if (json-&gt;Vsource) {
+ rb_raise(rb_eTypeError, &quot;already initialized instance&quot;);
+ }
+ rb_scan_args(argc, argv, &quot;11&quot;, &amp;source, &amp;opts);
+ if (!NIL_P(opts)) {
+ opts = rb_convert_type(opts, T_HASH, &quot;Hash&quot;, &quot;to_hash&quot;);
+ if (NIL_P(opts)) {
+ rb_raise(rb_eArgError, &quot;opts needs to be like a hash&quot;);
+ } else {
+ VALUE tmp = ID2SYM(i_max_nesting);
+ if (option_given_p(opts, tmp)) {
+ VALUE max_nesting = rb_hash_aref(opts, tmp);
+ if (RTEST(max_nesting)) {
+ Check_Type(max_nesting, T_FIXNUM);
+ json-&gt;max_nesting = FIX2INT(max_nesting);
+ } else {
+ json-&gt;max_nesting = 0;
+ }
+ } else {
+ json-&gt;max_nesting = 19;
+ }
+ tmp = ID2SYM(i_allow_nan);
+ if (option_given_p(opts, tmp)) {
+ json-&gt;allow_nan = RTEST(rb_hash_aref(opts, tmp)) ? 1 : 0;
+ } else {
+ json-&gt;allow_nan = 0;
+ }
+ tmp = ID2SYM(i_symbolize_names);
+ if (option_given_p(opts, tmp)) {
+ json-&gt;symbolize_names = RTEST(rb_hash_aref(opts, tmp)) ? 1 : 0;
+ } else {
+ json-&gt;symbolize_names = 0;
+ }
+ tmp = ID2SYM(i_quirks_mode);
+ if (option_given_p(opts, tmp)) {
+ VALUE quirks_mode = rb_hash_aref(opts, tmp);
+ json-&gt;quirks_mode = RTEST(quirks_mode) ? 1 : 0;
+ } else {
+ json-&gt;quirks_mode = 0;
+ }
+ tmp = ID2SYM(i_create_additions);
+ if (option_given_p(opts, tmp)) {
+ json-&gt;create_additions = RTEST(rb_hash_aref(opts, tmp));
+ } else {
+ json-&gt;create_additions = 1;
+ }
+ tmp = ID2SYM(i_create_id);
+ if (option_given_p(opts, tmp)) {
+ json-&gt;create_id = rb_hash_aref(opts, tmp);
+ } else {
+ json-&gt;create_id = rb_funcall(mJSON, i_create_id, 0);
+ }
+ tmp = ID2SYM(i_object_class);
+ if (option_given_p(opts, tmp)) {
+ json-&gt;object_class = rb_hash_aref(opts, tmp);
+ } else {
+ json-&gt;object_class = Qnil;
+ }
+ tmp = ID2SYM(i_array_class);
+ if (option_given_p(opts, tmp)) {
+ json-&gt;array_class = rb_hash_aref(opts, tmp);
+ } else {
+ json-&gt;array_class = Qnil;
+ }
+ tmp = ID2SYM(i_match_string);
+ if (option_given_p(opts, tmp)) {
+ VALUE match_string = rb_hash_aref(opts, tmp);
+ json-&gt;match_string = RTEST(match_string) ? match_string : Qnil;
+ } else {
+ json-&gt;match_string = Qnil;
+ }
+ }
+ } else {
+ json-&gt;max_nesting = 19;
+ json-&gt;allow_nan = 0;
+ json-&gt;create_additions = 1;
+ json-&gt;create_id = rb_funcall(mJSON, i_create_id, 0);
+ json-&gt;object_class = Qnil;
+ json-&gt;array_class = Qnil;
+ }
+ source = rb_convert_type(source, T_STRING, &quot;String&quot;, &quot;to_str&quot;);
+ if (!json-&gt;quirks_mode) {
+ source = convert_encoding(StringValue(source));
+ }
+ json-&gt;current_nesting = 0;
+ json-&gt;len = RSTRING_LEN(source);
+ json-&gt;source = RSTRING_PTR(source);;
+ json-&gt;Vsource = source;
+ return self;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-parse">
+
+ <a name="method-i-parse"></a><b>parse()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Parses the current <a href="../../JSON.html">JSON</a> text <em>source</em>
+and returns the complete data structure as a result.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-parse_source')" id="l_method-i-parse_source">show</a>
+
+ </p>
+ <div id="method-i-parse_source" class="dyn-source">
+ <pre>static VALUE cParser_parse(VALUE self)
+{
+ GET_PARSER;
+
+ if (json-&gt;quirks_mode) {
+ return cParser_parse_quirks_mode(self);
+ } else {
+ return cParser_parse_strict(self);
+ }
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-quirks_mode-3F">
+
+ <a name="method-i-quirks_mode-3F"></a><b>quirks_mode?()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a true, if this parser is in quirks_mode, false otherwise.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-quirks_mode-3F_source')" id="l_method-i-quirks_mode-3F_source">show</a>
+
+ </p>
+ <div id="method-i-quirks_mode-3F_source" class="dyn-source">
+ <pre>static VALUE cParser_quirks_mode_p(VALUE self)
+{
+ GET_PARSER;
+ return json-&gt;quirks_mode ? Qtrue : Qfalse;
+}</pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-source">
+
+ <a name="method-i-source"></a><b>source()
+</b>
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a copy of the current <em>source</em> string, that was used to
+construct this <a href="Parser.html">Parser</a>.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-source_source')" id="l_method-i-source_source">show</a>
+
+ </p>
+ <div id="method-i-source_source" class="dyn-source">
+ <pre>static VALUE cParser_source(VALUE self)
+{
+ GET_PARSER;
+ return rb_str_dup(json-&gt;Vsource);
+}</pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/GeneratorError.html b/doc/classes/JSON/GeneratorError.html
new file mode 100644
index 0000000..b609f3b
--- /dev/null
+++ b/doc/classes/JSON/GeneratorError.html
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::UnparserError</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::UnparserError
+
+ <span class="parent">&lt;
+
+ <a href="JSONError.html">JSON::JSONError</a>
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/common_rb.html">lib/json/common.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This exception is raised if a generator or unparser error occurs.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/JSONError.html b/doc/classes/JSON/JSONError.html
new file mode 100644
index 0000000..bebf9af
--- /dev/null
+++ b/doc/classes/JSON/JSONError.html
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::JSONError</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::JSONError
+
+ <span class="parent">&lt;
+
+ StandardError
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/common_rb.html">lib/json/common.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>The base exception for <a href="../JSON.html">JSON</a> errors.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/MissingUnicodeSupport.html b/doc/classes/JSON/MissingUnicodeSupport.html
new file mode 100644
index 0000000..1928834
--- /dev/null
+++ b/doc/classes/JSON/MissingUnicodeSupport.html
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::MissingUnicodeSupport</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::MissingUnicodeSupport
+
+ <span class="parent">&lt;
+
+ <a href="JSONError.html">JSON::JSONError</a>
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/common_rb.html">lib/json/common.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This exception is raised if the required unicode support is missing on the
+system. Usually this means that the iconv library is not installed.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/NestingError.html b/doc/classes/JSON/NestingError.html
new file mode 100644
index 0000000..65d9674
--- /dev/null
+++ b/doc/classes/JSON/NestingError.html
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::NestingError</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::NestingError
+
+ <span class="parent">&lt;
+
+ <a href="ParserError.html">JSON::ParserError</a>
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/common_rb.html">lib/json/common.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This exception is raised if the nesting of parsed data structures is too
+deep.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/ParserError.html b/doc/classes/JSON/ParserError.html
new file mode 100644
index 0000000..7e05149
--- /dev/null
+++ b/doc/classes/JSON/ParserError.html
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::ParserError</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::ParserError
+
+ <span class="parent">&lt;
+
+ <a href="JSONError.html">JSON::JSONError</a>
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/common_rb.html">lib/json/common.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This exception is raised if a parser error occurs.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure.html b/doc/classes/JSON/Pure.html
new file mode 100644
index 0000000..6770d01
--- /dev/null
+++ b/doc/classes/JSON/Pure.html
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../css/github.css" type="text/css" media="screen" />
+<script src="../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ <li><a href="../../files/lib/json/pure/parser_rb.html">lib/json/pure/parser.rb</a></li>
+
+ <li><a href="../../files/lib/json/pure_rb.html">lib/json/pure.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This module holds all the modules/classes that implement JSON’s
+functionality in pure ruby.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="Pure/Generator.html">JSON::Pure::Generator</a>
+ </li>
+
+ <li>
+ <span class="type">CLASS</span>
+ <a href="Pure/Parser.html">JSON::Pure::Parser</a>
+ </li>
+
+ </ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator.html b/doc/classes/JSON/Pure/Generator.html
new file mode 100644
index 0000000..b5d373b
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator.html
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="Generator/GeneratorMethods.html">JSON::Pure::Generator::GeneratorMethods</a>
+ </li>
+
+ <li>
+ <span class="type">CLASS</span>
+ <a href="Generator/State.html">JSON::Pure::Generator::State</a>
+ </li>
+
+ </ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods.html
new file mode 100644
index 0000000..2e09ad8
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods.html
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Array.html">JSON::Pure::Generator::GeneratorMethods::Array</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/FalseClass.html">JSON::Pure::Generator::GeneratorMethods::FalseClass</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Float.html">JSON::Pure::Generator::GeneratorMethods::Float</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Hash.html">JSON::Pure::Generator::GeneratorMethods::Hash</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Integer.html">JSON::Pure::Generator::GeneratorMethods::Integer</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/NilClass.html">JSON::Pure::Generator::GeneratorMethods::NilClass</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/Object.html">JSON::Pure::Generator::GeneratorMethods::Object</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/String.html">JSON::Pure::Generator::GeneratorMethods::String</a>
+ </li>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="GeneratorMethods/TrueClass.html">JSON::Pure::Generator::GeneratorMethods::TrueClass</a>
+ </li>
+
+ </ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/Array.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Array.html
new file mode 100644
index 0000000..f1f9336
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Array.html
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::Array</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::Array
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(state = nil, *)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string containing a <a
+href="../../../../JSON.html">JSON</a> array, that is unparsed from this <a
+href="Array.html">Array</a> instance. <em>state</em> is a JSON::State
+object, that can also be used to configure the produced <a
+href="../../../../JSON.html">JSON</a> string output further.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 328</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(<span class="ruby-identifier">state</span> = <span class="ruby-keyword">nil</span>, *)
+ <span class="ruby-identifier">state</span> = <span class="ruby-constant">State</span>.<span class="ruby-identifier">from_state</span>(<span class="ruby-identifier">state</span>)
+ <span class="ruby-identifier">state</span>.<span class="ruby-identifier">check_max_nesting</span>
+ <span class="ruby-identifier">json_transform</span>(<span class="ruby-identifier">state</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/FalseClass.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/FalseClass.html
new file mode 100644
index 0000000..5363e97
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/FalseClass.html
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::FalseClass</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::FalseClass
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(*)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string for false:
+‘false’.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 458</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(*) <span class="ruby-string">'false'</span> <span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/Float.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Float.html
new file mode 100644
index 0000000..34b061f
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Float.html
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::Float</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::Float
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(state = nil, *)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string representation
+for this <a href="Float.html">Float</a> number.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 364</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(<span class="ruby-identifier">state</span> = <span class="ruby-keyword">nil</span>, *)
+ <span class="ruby-identifier">state</span> = <span class="ruby-constant">State</span>.<span class="ruby-identifier">from_state</span>(<span class="ruby-identifier">state</span>)
+ <span class="ruby-keyword">case</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">infinite?</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">state</span>.<span class="ruby-identifier">allow_nan?</span>
+ <span class="ruby-identifier">to_s</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">GeneratorError</span>, <span class="ruby-node">&quot;#{self} not allowed in JSON&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">nan?</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">state</span>.<span class="ruby-identifier">allow_nan?</span>
+ <span class="ruby-identifier">to_s</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">GeneratorError</span>, <span class="ruby-node">&quot;#{self} not allowed in JSON&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">to_s</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/Hash.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Hash.html
new file mode 100644
index 0000000..6d89a73
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Hash.html
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::Hash</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::Hash
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(state = nil, *)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string containing a <a
+href="../../../../JSON.html">JSON</a> object, that is unparsed from this <a
+href="Hash.html">Hash</a> instance. <em>state</em> is a JSON::State object,
+that can also be used to configure the produced <a
+href="../../../../JSON.html">JSON</a> string output further. <em>depth</em>
+is used to find out nesting depth, to indent accordingly.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 284</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(<span class="ruby-identifier">state</span> = <span class="ruby-keyword">nil</span>, *)
+ <span class="ruby-identifier">state</span> = <span class="ruby-constant">State</span>.<span class="ruby-identifier">from_state</span>(<span class="ruby-identifier">state</span>)
+ <span class="ruby-identifier">state</span>.<span class="ruby-identifier">check_max_nesting</span>
+ <span class="ruby-identifier">json_transform</span>(<span class="ruby-identifier">state</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/Integer.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Integer.html
new file mode 100644
index 0000000..1de3b7b
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Integer.html
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::Integer</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::Integer
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(*)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string representation
+for this <a href="Integer.html">Integer</a> number.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 359</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(*) <span class="ruby-identifier">to_s</span> <span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/NilClass.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/NilClass.html
new file mode 100644
index 0000000..aa4e755
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/NilClass.html
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::NilClass</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::NilClass
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(*)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string for nil: ‘null’.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 463</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(*) <span class="ruby-string">'null'</span> <span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/Object.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Object.html
new file mode 100644
index 0000000..a423970
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/Object.html
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::Object</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::Object
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(*)
+
+ </div>
+
+
+ <div class="description">
+ <p>Converts this object to a string (calling to_s), converts it to a <a
+href="../../../../JSON.html">JSON</a> string, and returns the result. This
+is a fallback, if no special method <a
+href="Object.html#method-i-to_json">#to_json</a> was defined for some
+object.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 275</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(*) <span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_json</span> <span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/String.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/String.html
new file mode 100644
index 0000000..b282713
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/String.html
@@ -0,0 +1,283 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::String</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::String
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Namespace -->
+ <div class="sectiontitle">Namespace</div>
+ <ul>
+
+ <li>
+ <span class="type">MODULE</span>
+ <a href="String/Extend.html">JSON::Pure::Generator::GeneratorMethods::String::Extend</a>
+ </li>
+
+ </ul>
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>I</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-included">included</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-to_json_raw">to_json_raw</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-to_json_raw_object">to_json_raw_object</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Class Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-included">
+
+ <a name="method-c-included"></a><b>included</b>(modul)
+
+ </div>
+
+
+ <div class="description">
+ <p>Extends <em>modul</em> with the <a
+href="String/Extend.html">String::Extend</a> module.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-included_source')" id="l_method-c-included_source">show</a>
+
+ </p>
+ <div id="method-c-included_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 429</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">self</span>.<span class="ruby-identifier">included</span>(<span class="ruby-identifier">modul</span>)
+ <span class="ruby-identifier">modul</span>.<span class="ruby-identifier">extend</span> <span class="ruby-constant">Extend</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(state = nil, *args)
+
+ </div>
+
+
+ <div class="description">
+ <p>This string should be encoded with UTF-8 A call to this method returns a <a
+href="../../../../JSON.html">JSON</a> string encoded with UTF16 big endian
+characters as u????.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 390</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(<span class="ruby-identifier">state</span> = <span class="ruby-keyword">nil</span>, *<span class="ruby-identifier">args</span>)
+ <span class="ruby-identifier">state</span> = <span class="ruby-constant">State</span>.<span class="ruby-identifier">from_state</span>(<span class="ruby-identifier">state</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">encoding</span> <span class="ruby-operator">==</span> <span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>
+ <span class="ruby-identifier">string</span> = <span class="ruby-keyword">self</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">string</span> = <span class="ruby-identifier">encode</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">state</span>.<span class="ruby-identifier">ascii_only?</span>
+ <span class="ruby-string">'&quot;'</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">JSON</span>.<span class="ruby-identifier">utf8_to_json_ascii</span>(<span class="ruby-identifier">string</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'&quot;'</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-string">'&quot;'</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">JSON</span>.<span class="ruby-identifier">utf8_to_json</span>(<span class="ruby-identifier">string</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">'&quot;'</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json_raw">
+
+ <a name="method-i-to_json_raw"></a><b>to_json_raw</b>(*args)
+
+ </div>
+
+
+ <div class="description">
+ <p>This method creates a <a href="../../../../JSON.html">JSON</a> text from
+the result of a call to <a
+href="String.html#method-i-to_json_raw_object">#to_json_raw_object</a> of
+this <a href="String.html">String</a>.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_raw_source')" id="l_method-i-to_json_raw_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_raw_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 446</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json_raw</span>(*<span class="ruby-identifier">args</span>)
+ <span class="ruby-identifier">to_json_raw_object</span>.<span class="ruby-identifier">to_json</span>(*<span class="ruby-identifier">args</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json_raw_object">
+
+ <a name="method-i-to_json_raw_object"></a><b>to_json_raw_object</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>This method creates a raw object hash, that can be nested into other data
+structures and will be unparsed as a raw string. This method should be
+used, if you want to convert raw strings to <a
+href="../../../../JSON.html">JSON</a> instead of UTF-8 strings, e. g.
+binary data.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_raw_object_source')" id="l_method-i-to_json_raw_object_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_raw_object_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 437</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json_raw_object</span>
+ {
+ <span class="ruby-constant">JSON</span>.<span class="ruby-identifier">create_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span>,
+ <span class="ruby-string">'raw'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">'C*'</span>),
+ }
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/String/Extend.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/String/Extend.html
new file mode 100644
index 0000000..c9a6da0
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/String/Extend.html
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::String::Extend</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::String::Extend
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>Module that holds the extinding methods if, the <a
+href="../String.html">String</a> module is included.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>J</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-json_create">json_create</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-json_create">
+
+ <a name="method-i-json_create"></a><b>json_create</b>(o)
+
+ </div>
+
+
+ <div class="description">
+ <p>Raw Strings are <a href="../../../../../JSON.html">JSON</a> Objects (the
+raw bytes are stored in an array for the key “raw”). The Ruby <a
+href="../String.html">String</a> can be created by this module method.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-json_create_source')" id="l_method-i-json_create_source">show</a>
+
+ </p>
+ <div id="method-i-json_create_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 423</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">json_create</span>(<span class="ruby-identifier">o</span>)
+ <span class="ruby-identifier">o</span>[<span class="ruby-string">'raw'</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'C*'</span>)
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/GeneratorMethods/TrueClass.html b/doc/classes/JSON/Pure/Generator/GeneratorMethods/TrueClass.html
new file mode 100644
index 0000000..320c144
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/GeneratorMethods/TrueClass.html
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::GeneratorMethods::TrueClass</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Module</span>
+ JSON::Pure::Generator::GeneratorMethods::TrueClass
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_json">to_json</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_json">
+
+ <a name="method-i-to_json"></a><b>to_json</b>(*)
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns a <a href="../../../../JSON.html">JSON</a> string for true: ‘true’.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_json_source')" id="l_method-i-to_json_source">show</a>
+
+ </p>
+ <div id="method-i-to_json_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 453</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_json</span>(*) <span class="ruby-string">'true'</span> <span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Generator/State.html b/doc/classes/JSON/Pure/Generator/State.html
new file mode 100644
index 0000000..984046c
--- /dev/null
+++ b/doc/classes/JSON/Pure/Generator/State.html
@@ -0,0 +1,748 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Generator::State</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::Pure::Generator::State
+
+ <span class="parent">&lt;
+
+ Object
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../../files/lib/json/pure/generator_rb.html">lib/json/pure/generator.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This class is used to create <a href="State.html">State</a> instances, that
+are use to hold data while generating a <a
+href="../../../JSON.html">JSON</a> text from a Ruby data structure.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>#</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-5B-5D">[]</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>A</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-allow_nan-3F">allow_nan?</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-ascii_only-3F">ascii_only?</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>C</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-check_circular-3F">check_circular?</a>,
+ </li>
+
+
+ <li>
+ <a href="#method-i-configure">configure</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>F</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-from_state">from_state</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>G</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-generate">generate</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>M</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-merge">merge</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>N</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-new">new</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>Q</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-quirks_mode-3F">quirks_mode?</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>T</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-to_h">to_h</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Section attributes -->
+ <div class="sectiontitle">Attributes</div>
+ <table border='0' cellpadding='5'>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>array_nl</td>
+ <td class='attr-desc'><p>This string is put at the end of a line that holds a <a
+href="../../../JSON.html">JSON</a> array.</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>depth</td>
+ <td class='attr-desc'><p>This integer returns the current depth data structure nesting in the
+generated <a href="../../../JSON.html">JSON</a>.</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>indent</td>
+ <td class='attr-desc'><p>This string is used to indent levels in the <a
+href="../../../JSON.html">JSON</a> text.</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>max_nesting</td>
+ <td class='attr-desc'><p>This integer returns the maximum level of data structure nesting in the
+generated <a href="../../../JSON.html">JSON</a>, <a
+href="State.html#attribute-i-max_nesting">#max_nesting</a> = 0 if no
+maximum is checked.</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>object_nl</td>
+ <td class='attr-desc'><p>This string is put at the end of a line that holds a <a
+href="../../../JSON.html">JSON</a> object (or Hash).</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>quirks_mode</td>
+ <td class='attr-desc'><p>If this attribute is set to true, quirks mode is enabled, otherwise it’s
+disabled.</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>space</td>
+ <td class='attr-desc'><p>This string is used to insert a space between the tokens in a <a
+href="../../../JSON.html">JSON</a> string.</p></td>
+ </tr>
+
+ <tr valign='top'>
+ <td class='attr-rw'>
+ [RW]
+ </td>
+ <td class='attr-name'>space_before</td>
+ <td class='attr-desc'><p>This string is used to insert a space before the ‘:’ in <a
+href="../../../JSON.html">JSON</a> objects.</p></td>
+ </tr>
+
+ </table>
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Class Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-from_state">
+
+ <a name="method-c-from_state"></a><b>from_state</b>(opts)
+
+ </div>
+
+
+ <div class="description">
+ <p>Creates a <a href="State.html">State</a> object from <em>opts</em>, which
+ought to be Hash to create a new <a href="State.html">State</a> instance
+configured by <em>opts</em>, something else to create an unconfigured
+instance. If <em>opts</em> is a <a href="State.html">State</a> object, it
+is just returned.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-from_state_source')" id="l_method-c-from_state_source">show</a>
+
+ </p>
+ <div id="method-c-from_state_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 108</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">self</span>.<span class="ruby-identifier">from_state</span>(<span class="ruby-identifier">opts</span>)
+ <span class="ruby-keyword">case</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-keyword">self</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">opts</span>
+ <span class="ruby-identifier">opts</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:to_hash</span>)
+ <span class="ruby-identifier">new</span>(<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">to_hash</span>)
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:to_h</span>)
+ <span class="ruby-identifier">new</span>(<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">to_h</span>)
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-constant">SAFE_STATE_PROTOTYPE</span>.<span class="ruby-identifier">dup</span>
+ <span class="ruby-keyword">end</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-new">
+
+ <a name="method-c-new"></a><b>new</b>(opts = {})
+
+ </div>
+
+
+ <div class="description">
+ <p>Instantiates a new <a href="State.html">State</a> object, configured by
+<em>opts</em>.</p>
+
+<p><em>opts</em> can have the following keys:</p>
+<ul><li>
+<p><strong>indent</strong>: a string used to indent levels (default: ”),</p>
+</li><li>
+<p><strong>space</strong>: a string that is put after, a : or , delimiter
+(default: ”),</p>
+</li><li>
+<p><strong><a
+href="State.html#attribute-i-space_before">#space_before</a></strong>: a
+string that is put before a : pair delimiter (default: ”),</p>
+</li><li>
+<p><strong><a href="State.html#attribute-i-object_nl">#object_nl</a></strong>:
+a string that is put at the end of a <a href="../../../JSON.html">JSON</a>
+object (default: ”),</p>
+</li><li>
+<p><strong><a href="State.html#attribute-i-array_nl">#array_nl</a></strong>: a
+string that is put at the end of a <a href="../../../JSON.html">JSON</a>
+array (default: ”),</p>
+</li><li>
+<p><strong>check_circular</strong>: is deprecated now, use the :<a
+href="State.html#attribute-i-max_nesting">#max_nesting</a> option instead,</p>
+</li><li>
+<p><strong><a
+href="State.html#attribute-i-max_nesting">#max_nesting</a></strong>: sets
+the maximum level of data structure nesting in the generated <a
+href="../../../JSON.html">JSON</a>, <a
+href="State.html#attribute-i-max_nesting">#max_nesting</a> = 0 if no
+maximum should be checked.</p>
+</li><li>
+<p><strong>allow_nan</strong>: true if NaN, Infinity, and -Infinity should be
+generated, otherwise an exception is thrown, if these values are
+encountered. This options defaults to false.</p>
+</li><li>
+<p><strong><a
+href="State.html#attribute-i-quirks_mode">#quirks_mode</a></strong>:
+Enables <a href="State.html#attribute-i-quirks_mode">#quirks_mode</a> for
+parser, that is for example generating single <a
+href="../../../JSON.html">JSON</a> values instead of documents is possible.</p>
+</li></ul>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-new_source')" id="l_method-c-new_source">show</a>
+
+ </p>
+ <div id="method-c-new_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 138</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">initialize</span>(<span class="ruby-identifier">opts</span> = {})
+ <span class="ruby-ivar">@indent</span> = <span class="ruby-string">''</span>
+ <span class="ruby-ivar">@space</span> = <span class="ruby-string">''</span>
+ <span class="ruby-ivar">@space_before</span> = <span class="ruby-string">''</span>
+ <span class="ruby-ivar">@object_nl</span> = <span class="ruby-string">''</span>
+ <span class="ruby-ivar">@array_nl</span> = <span class="ruby-string">''</span>
+ <span class="ruby-ivar">@allow_nan</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-ivar">@ascii_only</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-ivar">@quirks_mode</span> = <span class="ruby-keyword">false</span>
+ <span class="ruby-ivar">@buffer_initial_length</span> = <span class="ruby-number">1024</span>
+ <span class="ruby-identifier">configure</span> <span class="ruby-identifier">opts</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-5B-5D">
+
+ <a name="method-i-5B-5D"></a><b>[]</b>(name)
+
+ </div>
+
+
+ <div class="description">
+ <p>Return the value returned by method <code>name</code>.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-5B-5D_source')" id="l_method-i-5B-5D_source">show</a>
+
+ </p>
+ <div id="method-i-5B-5D_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 265</span>
+<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-keyword ruby-title">name</span>)
+ <span class="ruby-identifier">__send__</span> <span class="ruby-identifier">name</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-allow_nan-3F">
+
+ <a name="method-i-allow_nan-3F"></a><b>allow_nan?</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true if NaN, Infinity, and -Infinity should be considered as valid
+<a href="../../../JSON.html">JSON</a> and output.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-allow_nan-3F_source')" id="l_method-i-allow_nan-3F_source">show</a>
+
+ </p>
+ <div id="method-i-allow_nan-3F_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 205</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">allow_nan?</span>
+ <span class="ruby-ivar">@allow_nan</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-ascii_only-3F">
+
+ <a name="method-i-ascii_only-3F"></a><b>ascii_only?</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if only ASCII characters should be generated. Otherwise
+returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-ascii_only-3F_source')" id="l_method-i-ascii_only-3F_source">show</a>
+
+ </p>
+ <div id="method-i-ascii_only-3F_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 211</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">ascii_only?</span>
+ <span class="ruby-ivar">@ascii_only</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-check_circular-3F">
+
+ <a name="method-i-check_circular-3F"></a><b>check_circular?</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if circular data structures are checked, otherwise returns
+false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-check_circular-3F_source')" id="l_method-i-check_circular-3F_source">show</a>
+
+ </p>
+ <div id="method-i-check_circular-3F_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 199</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">check_circular?</span>
+ <span class="ruby-operator">!</span><span class="ruby-ivar">@max_nesting</span>.<span class="ruby-identifier">zero?</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-configure">
+
+ <a name="method-i-configure"></a><b>configure</b>(opts)
+
+ </div>
+
+
+ <div class="description">
+ <p>Configure this <a href="State.html">State</a> instance with the Hash
+<em>opts</em>, and return itself.</p>
+ </div>
+
+
+
+ <div class="aka">
+ Also aliased as: <a href="State.html#method-i-merge">merge</a>
+ </div>
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-configure_source')" id="l_method-i-configure_source">show</a>
+
+ </p>
+ <div id="method-i-configure_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 222</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">configure</span>(<span class="ruby-identifier">opts</span>)
+ <span class="ruby-ivar">@indent</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:indent</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:indent</span>)
+ <span class="ruby-ivar">@space</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:space</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:space</span>)
+ <span class="ruby-ivar">@space_before</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:space_before</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:space_before</span>)
+ <span class="ruby-ivar">@object_nl</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:object_nl</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:object_nl</span>)
+ <span class="ruby-ivar">@array_nl</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:array_nl</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:array_nl</span>)
+ <span class="ruby-ivar">@allow_nan</span> = <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-identifier">opts</span>[<span class="ruby-value">:allow_nan</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:allow_nan</span>)
+ <span class="ruby-ivar">@ascii_only</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:ascii_only</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:ascii_only</span>)
+ <span class="ruby-ivar">@depth</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:depth</span>] <span class="ruby-operator">||</span> <span class="ruby-number">0</span>
+ <span class="ruby-ivar">@quirks_mode</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:quirks_mode</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:quirks_mode</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:max_nesting</span>) <span class="ruby-comment"># defaults to 19</span>
+ <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-number">19</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:max_nesting</span>]
+ <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:max_nesting</span>]
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-number">0</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">self</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-generate">
+
+ <a name="method-i-generate"></a><b>generate</b>(obj)
+
+ </div>
+
+
+ <div class="description">
+ <p>Generates a valid <a href="../../../JSON.html">JSON</a> document from
+object <code>obj</code> and returns the result. If no valid <a
+href="../../../JSON.html">JSON</a> document can be created this method
+raises a <a href="../../GeneratorError.html">GeneratorError</a> exception.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-generate_source')" id="l_method-i-generate_source">show</a>
+
+ </p>
+ <div id="method-i-generate_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 256</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">generate</span>(<span class="ruby-identifier">obj</span>)
+ <span class="ruby-identifier">result</span> = <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">to_json</span>(<span class="ruby-keyword">self</span>)
+ <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@quirks_mode</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">result</span> <span class="ruby-operator">!~</span> <span class="ruby-regexp">/\A\s*(?:\[.*\]|\{.*\})\s*\Z/</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">GeneratorError</span>, <span class="ruby-string">&quot;only generation of JSON objects or arrays allowed&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">result</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-merge">
+
+ <a name="method-i-merge"></a><b>merge</b>(opts)
+
+ </div>
+
+
+ <div class="description">
+
+ </div>
+
+
+
+
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-quirks_mode-3F">
+
+ <a name="method-i-quirks_mode-3F"></a><b>quirks_mode?</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns true, if quirks mode is enabled. Otherwise returns false.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-quirks_mode-3F_source')" id="l_method-i-quirks_mode-3F_source">show</a>
+
+ </p>
+ <div id="method-i-quirks_mode-3F_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 216</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">quirks_mode?</span>
+ <span class="ruby-ivar">@quirks_mode</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-to_h">
+
+ <a name="method-i-to_h"></a><b>to_h</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>Returns the configuration instance variables as a hash, that can be passed
+to the configure method.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-to_h_source')" id="l_method-i-to_h_source">show</a>
+
+ </p>
+ <div id="method-i-to_h_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/generator.rb, line 245</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">to_h</span>
+ <span class="ruby-identifier">result</span> = {}
+ <span class="ruby-keyword">for</span> <span class="ruby-identifier">iv</span> <span class="ruby-keyword">in</span> <span class="ruby-node">]indent space space_before object_nl array_nl allow_nan max_nesting ascii_only quirks_mode buffer_initial_length depth]</span>
+ <span class="ruby-identifier">result</span>[<span class="ruby-identifier">iv</span>.<span class="ruby-identifier">intern</span>] = <span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-node">&quot;@#{iv}&quot;</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">result</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/classes/JSON/Pure/Parser.html b/doc/classes/JSON/Pure/Parser.html
new file mode 100644
index 0000000..f212825
--- /dev/null
+++ b/doc/classes/JSON/Pure/Parser.html
@@ -0,0 +1,620 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!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" xml:lang="en" lang="en">
+<head>
+ <title>JSON::Pure::Parser</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" href="../../../css/reset.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/main.css" type="text/css" media="screen" />
+<link rel="stylesheet" href="../../../css/github.css" type="text/css" media="screen" />
+<script src="../../../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/main.js" type="text/javascript" charset="utf-8"></script>
+<script src="../../../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
+
+</head>
+
+<body>
+ <div class="banner">
+
+ <h1>
+ <span class="type">Class</span>
+ JSON::Pure::Parser
+
+ <span class="parent">&lt;
+
+ StringScanner
+
+ </span>
+
+ </h1>
+ <ul class="files">
+
+ <li><a href="../../../files/lib/json/pure/parser_rb.html">lib/json/pure/parser.rb</a></li>
+
+ </ul>
+ </div>
+ <div id="bodyContent">
+ <div id="content">
+
+ <div class="description">
+
+<p>This class implements the <a href="../../JSON.html">JSON</a> parser that is
+used to parse a <a href="../../JSON.html">JSON</a> string into a Ruby data
+structure.</p>
+
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Method ref -->
+ <div class="sectiontitle">Methods</div>
+ <dl class="methods">
+
+ <dt>N</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-c-new">new</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>P</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-parse">parse</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>Q</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-quirks_mode-3F">quirks_mode?</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ <dt>R</dt>
+ <dd>
+ <ul>
+
+
+ <li>
+ <a href="#method-i-reset">reset</a>
+ </li>
+
+ </ul>
+ </dd>
+
+ </dl>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!-- Section constants -->
+ <div class="sectiontitle">Constants</div>
+ <table border='0' cellpadding='5'>
+
+ <tr valign='top'>
+ <td class="attr-name">STRING</td>
+ <td>=</td>
+ <td class="attr-value">/&quot; ((?:[^\x0-\x1f&quot;\\] |
+# escaped special characters:
+\\[&quot;\\\/bfnrt] |
+\\u[0-9a-fA-F]{4} |
+# match all but escaped special characters:
+\\[\x20-\x21\x23-\x2e\x30-\x5b\x5d-\x61\x63-\x65\x67-\x6d\x6f-\x71\x73\x75-\xff])*)
+&quot;/nx</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">INTEGER</td>
+ <td>=</td>
+ <td class="attr-value">/(-?0|-?[1-9]\d*)/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">FLOAT</td>
+ <td>=</td>
+ <td class="attr-value">/(-?
+(?:0|[1-9]\d*)
+(?:
+\.\d+(?i:e[+-]?\d+) |
+\.\d+ |
+(?i:e[+-]?\d+)
+)
+)/x</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">NAN</td>
+ <td>=</td>
+ <td class="attr-value">/NaN/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">INFINITY</td>
+ <td>=</td>
+ <td class="attr-value">/Infinity/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">MINUS_INFINITY</td>
+ <td>=</td>
+ <td class="attr-value">/-Infinity/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">OBJECT_OPEN</td>
+ <td>=</td>
+ <td class="attr-value">/\{/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">OBJECT_CLOSE</td>
+ <td>=</td>
+ <td class="attr-value">/\}/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">ARRAY_OPEN</td>
+ <td>=</td>
+ <td class="attr-value">/\[/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">ARRAY_CLOSE</td>
+ <td>=</td>
+ <td class="attr-value">/\]/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">PAIR_DELIMITER</td>
+ <td>=</td>
+ <td class="attr-value">/:/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">COLLECTION_DELIMITER</td>
+ <td>=</td>
+ <td class="attr-value">/,/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">TRUE</td>
+ <td>=</td>
+ <td class="attr-value">/true/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">FALSE</td>
+ <td>=</td>
+ <td class="attr-value">/false/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">NULL</td>
+ <td>=</td>
+ <td class="attr-value">/null/</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">IGNORE</td>
+ <td>=</td>
+ <td class="attr-value">%r(
+(?:
+//[^\n\r]*[\n\r]| # line comments
+/\* # c-style comments
+(?:
+[^*/]| # normal chars
+/[^*]| # slashes that do not start a nested comment
+\*[^/]| # asterisks that do not end this comment
+/(?=\*/) # single slash before this comment's end
+)*
+\*/ # the End of this comment
+|[ \t\r\n]+ # whitespaces: space, horicontal tab, lf, cr
+)+
+)mx</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">UNPARSED</td>
+ <td>=</td>
+ <td class="attr-value">Object.new</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">UNESCAPE_MAP</td>
+ <td>=</td>
+ <td class="attr-value">Hash.new { |h, k| h[k] = k.chr }</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"><p>Unescape characters in strings.</p></td>
+ </tr>
+
+
+ <tr valign='top'>
+ <td class="attr-name">EMPTY_8BIT_STRING</td>
+ <td>=</td>
+ <td class="attr-value">''</td>
+ </tr>
+
+ <tr valign='top'>
+ <td>&nbsp;</td>
+ <td colspan="2" class="attr-desc"></td>
+ </tr>
+
+
+ </table>
+
+
+
+
+
+
+ <!-- Methods -->
+
+ <div class="sectiontitle">Class Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-c-new">
+
+ <a name="method-c-new"></a><b>new</b>(source, opts = {})
+
+ </div>
+
+
+ <div class="description">
+ <p>Creates a new <a href="Parser.html">JSON::Pure::Parser</a> instance for the
+string <em>source</em>.</p>
+
+<p>It will be configured by the <em>opts</em> hash. <em>opts</em> can have the
+following keys:</p>
+<ul><li>
+<p><strong>max_nesting</strong>: The maximum depth of nesting allowed in the
+parsed data structures. Disable depth checking with :max_nesting =&gt;
+false|nil|0, it defaults to 19.</p>
+</li><li>
+<p><strong>allow_nan</strong>: If set to true, allow NaN, Infinity and
+-Infinity in defiance of RFC 4627 to be parsed by the <a
+href="Parser.html">Parser</a>. This option defaults to false.</p>
+</li><li>
+<p><strong>symbolize_names</strong>: If set to true, returns symbols for the
+names (keys) in a <a href="../../JSON.html">JSON</a> object. Otherwise
+strings are returned, which is also the default.</p>
+</li><li>
+<p><strong>create_additions</strong>: If set to false, the <a
+href="Parser.html">Parser</a> doesn’t create additions even if a matchin
+class and create_id was found. This option defaults to true.</p>
+</li><li>
+<p><strong>object_class</strong>: Defaults to Hash</p>
+</li><li>
+<p><strong>array_class</strong>: Defaults to Array</p>
+</li><li>
+<p><strong>quirks_mode</strong>: Enables quirks_mode for parser, that is for
+example parsing single <a href="../../JSON.html">JSON</a> values instead of
+documents is possible.</p>
+</li></ul>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-c-new_source')" id="l_method-c-new_source">show</a>
+
+ </p>
+ <div id="method-c-new_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/parser.rb, line 73</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">initialize</span>(<span class="ruby-identifier">source</span>, <span class="ruby-identifier">opts</span> = {})
+ <span class="ruby-identifier">opts</span> <span class="ruby-operator">||=</span> {}
+ <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@quirks_mode</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:quirks_mode</span>]
+ <span class="ruby-identifier">source</span> = <span class="ruby-identifier">convert_encoding</span> <span class="ruby-identifier">source</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">super</span> <span class="ruby-identifier">source</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:max_nesting</span>) <span class="ruby-comment"># defaults to 19</span>
+ <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-number">19</span>
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:max_nesting</span>]
+ <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:max_nesting</span>]
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-number">0</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-ivar">@allow_nan</span> = <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-identifier">opts</span>[<span class="ruby-value">:allow_nan</span>]
+ <span class="ruby-ivar">@symbolize_names</span> = <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-identifier">opts</span>[<span class="ruby-value">:symbolize_names</span>]
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:create_additions</span>)
+ <span class="ruby-ivar">@create_additions</span> = <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-identifier">opts</span>[<span class="ruby-value">:create_additions</span>]
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-ivar">@create_additions</span> = <span class="ruby-keyword">true</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-ivar">@create_id</span> = <span class="ruby-ivar">@create_additions</span> <span class="ruby-operator">?</span> <span class="ruby-constant">JSON</span>.<span class="ruby-identifier">create_id</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>
+ <span class="ruby-ivar">@object_class</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:object_class</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">Hash</span>
+ <span class="ruby-ivar">@array_class</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:array_class</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">Array</span>
+ <span class="ruby-ivar">@match_string</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:match_string</span>]
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="sectiontitle">Instance Public methods</div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-parse">
+
+ <a name="method-i-parse"></a><b>parse</b>()
+
+ </div>
+
+
+ <div class="description">
+ <p>Parses the current <a href="../../JSON.html">JSON</a> string
+<em>source</em> and returns the complete data structure as a result.</p>
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-parse_source')" id="l_method-i-parse_source">show</a>
+
+ </p>
+ <div id="method-i-parse_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/parser.rb, line 112</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">parse</span>
+ <span class="ruby-identifier">reset</span>
+ <span class="ruby-identifier">obj</span> = <span class="ruby-keyword">nil</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@quirks_mode</span>
+ <span class="ruby-keyword">while</span> <span class="ruby-operator">!</span><span class="ruby-identifier">eos?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">skip</span>(<span class="ruby-constant">IGNORE</span>)
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">eos?</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ParserError</span>, <span class="ruby-string">&quot;source did not contain any JSON!&quot;</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">obj</span> = <span class="ruby-identifier">parse_value</span>
+ <span class="ruby-identifier">obj</span> <span class="ruby-operator">==</span> <span class="ruby-constant">UNPARSED</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ParserError</span>, <span class="ruby-string">&quot;source did not contain any JSON!&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-keyword">until</span> <span class="ruby-identifier">eos?</span>
+ <span class="ruby-keyword">case</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">scan</span>(<span class="ruby-constant">OBJECT_OPEN</span>)
+ <span class="ruby-identifier">obj</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ParserError</span>, <span class="ruby-node">&quot;source '#{peek(20)}' not in JSON!&quot;</span>
+ <span class="ruby-ivar">@current_nesting</span> = <span class="ruby-number">1</span>
+ <span class="ruby-identifier">obj</span> = <span class="ruby-identifier">parse_object</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">scan</span>(<span class="ruby-constant">ARRAY_OPEN</span>)
+ <span class="ruby-identifier">obj</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ParserError</span>, <span class="ruby-node">&quot;source '#{peek(20)}' not in JSON!&quot;</span>
+ <span class="ruby-ivar">@current_nesting</span> = <span class="ruby-number">1</span>
+ <span class="ruby-identifier">obj</span> = <span class="ruby-identifier">parse_array</span>
+ <span class="ruby-keyword">when</span> <span class="ruby-identifier">skip</span>(<span class="ruby-constant">IGNORE</span>)
+ ;
+ <span class="ruby-keyword">else</span>
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ParserError</span>, <span class="ruby-node">&quot;source '#{peek(20)}' not in JSON!&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">obj</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">raise</span> <span class="ruby-constant">ParserError</span>, <span class="ruby-string">&quot;source did not contain any JSON!&quot;</span>
+ <span class="ruby-keyword">end</span>
+ <span class="ruby-identifier">obj</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-quirks_mode-3F">
+
+ <a name="method-i-quirks_mode-3F"></a><b>quirks_mode?</b>()
+
+ </div>
+
+
+ <div class="description">
+
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-quirks_mode-3F_source')" id="l_method-i-quirks_mode-3F_source">show</a>
+
+ </p>
+ <div id="method-i-quirks_mode-3F_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/parser.rb, line 101</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">quirks_mode?</span>
+ <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-ivar">@quirks_mode</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+
+ <div class="method">
+ <div class="title method-title" id="method-i-reset">
+
+ <a name="method-i-reset"></a><b>reset</b>()
+
+ </div>
+
+
+ <div class="description">
+
+ </div>
+
+
+
+
+
+
+ <div class="sourcecode">
+
+ <p class="source-link">
+ Source:
+ <a href="javascript:toggleSource('method-i-reset_source')" id="l_method-i-reset_source">show</a>
+
+ </p>
+ <div id="method-i-reset_source" class="dyn-source">
+ <pre><span class="ruby-comment"># File lib/json/pure/parser.rb, line 105</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">reset</span>
+ <span class="ruby-keyword">super</span>
+ <span class="ruby-ivar">@current_nesting</span> = <span class="ruby-number">0</span>
+<span class="ruby-keyword">end</span></pre>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html> \ No newline at end of file