diff options
Diffstat (limited to 'doc/classes/JSON/Pure/Generator/State.html')
-rw-r--r-- | doc/classes/JSON/Pure/Generator/State.html | 596 |
1 files changed, 0 insertions, 596 deletions
diff --git a/doc/classes/JSON/Pure/Generator/State.html b/doc/classes/JSON/Pure/Generator/State.html deleted file mode 100644 index b1c434c..0000000 --- a/doc/classes/JSON/Pure/Generator/State.html +++ /dev/null @@ -1,596 +0,0 @@ -<?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" /> - <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> -</head> - -<body> - <div class="banner"> - <h1> - <span class="type">Class</span> - JSON::Pure::Generator::State - - <span class="parent">< - - <a href="../../../Object.html">Object</a> - - </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 a Ruby data structure. -</p> - - </div> - - - - - - - - - - <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>N</dt> - <dd> - <ul> - - <li><a href="#method-c-new">new</a></li> - - </ul> - </dd> - - <dt>T</dt> - <dd> - <ul> - - <li><a href="#method-i-to_h">to_h</a></li> - - </ul> - </dd> - - </dl> - - - - - - - - - - - - <div class="sectiontitle">Attributes</div> - <table border='0' cellpadding='5'> - - <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'>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> - - <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'>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'>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#max_nesting">max_nesting</a> = 0 if no maximum is checked. -</p></td> - </tr> - - </table> - - - - <div class="sectiontitle">Class Public methods</div> - - <div class="method"> - <div class="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 cmt"># File lib/json/pure/generator.rb, line 108</span> -108: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">from_state</span>(<span class="ruby-identifier">opts</span>) -109: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">opts</span> -110: <span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">self</span> -111: <span class="ruby-identifier">opts</span> -112: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Hash</span> -113: <span class="ruby-identifier">new</span>(<span class="ruby-identifier">opts</span>) -114: <span class="ruby-keyword kw">else</span> -115: <span class="ruby-constant">SAFE_STATE_PROTOTYPE</span> -116: <span class="ruby-keyword kw">end</span> -117: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="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> -<b>indent</b>: a string used to indent levels (default: ’’), -</p> -</li> -<li><p> -<b>space</b>: a string that is put after, a : or , delimiter (default: -’’), -</p> -</li> -<li><p> -<b><a href="State.html#space_before">space_before</a></b>: a string that is -put before a : pair delimiter (default: ’’), -</p> -</li> -<li><p> -<b><a href="State.html#object_nl">object_nl</a></b>: a string that is put -at the end of a <a href="../../../JSON.html">JSON</a> object (default: -’’), -</p> -</li> -<li><p> -<b><a href="State.html#array_nl">array_nl</a></b>: a string that is put at -the end of a <a href="../../../JSON.html">JSON</a> array (default: -’’), -</p> -</li> -<li><p> -<b>check_circular</b>: is deprecated now, use the :<a -href="State.html#max_nesting">max_nesting</a> option instead, -</p> -</li> -<li><p> -<b><a href="State.html#max_nesting">max_nesting</a></b>: sets the maximum -level of data structure nesting in the generated <a -href="../../../JSON.html">JSON</a>, <a -href="State.html#max_nesting">max_nesting</a> = 0 if no maximum should be -checked. -</p> -</li> -<li><p> -<b>allow_nan</b>: 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> -</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 cmt"># File lib/json/pure/generator.rb, line 134</span> -134: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opts</span> = {}) -135: <span class="ruby-ivar">@indent</span> = <span class="ruby-value str">''</span> -136: <span class="ruby-ivar">@space</span> = <span class="ruby-value str">''</span> -137: <span class="ruby-ivar">@space_before</span> = <span class="ruby-value str">''</span> -138: <span class="ruby-ivar">@object_nl</span> = <span class="ruby-value str">''</span> -139: <span class="ruby-ivar">@array_nl</span> = <span class="ruby-value str">''</span> -140: <span class="ruby-ivar">@allow_nan</span> = <span class="ruby-keyword kw">false</span> -141: <span class="ruby-ivar">@ascii_only</span> = <span class="ruby-keyword kw">false</span> -142: <span class="ruby-identifier">configure</span> <span class="ruby-identifier">opts</span> -143: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="sectiontitle">Instance Public methods</div> - - <div class="method"> - <div class="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 <tt>name</tt>. -</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 cmt"># File lib/json/pure/generator.rb, line 231</span> -231: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">name</span>) -232: <span class="ruby-identifier">__send__</span> <span class="ruby-identifier">name</span> -233: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="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 cmt"># File lib/json/pure/generator.rb, line 181</span> -181: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">allow_nan?</span> -182: <span class="ruby-ivar">@allow_nan</span> -183: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="title" id="method-i-ascii_only%3F"> - - <a name="method-i-ascii_only%3F"></a><b>ascii_only?</b>() - - </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 cmt"># File lib/json/pure/generator.rb, line 185</span> -185: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ascii_only?</span> -186: <span class="ruby-ivar">@ascii_only</span> -187: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="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 cmt"># File lib/json/pure/generator.rb, line 175</span> -175: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">check_circular?</span> -176: <span class="ruby-operator">!</span><span class="ruby-ivar">@max_nesting</span>.<span class="ruby-identifier">zero?</span> -177: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="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="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 cmt"># File lib/json/pure/generator.rb, line 191</span> -191: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">configure</span>(<span class="ruby-identifier">opts</span>) -192: <span class="ruby-ivar">@indent</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:indent</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:indent</span>) -193: <span class="ruby-ivar">@space</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:space</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:space</span>) -194: <span class="ruby-ivar">@space_before</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:space_before</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:space_before</span>) -195: <span class="ruby-ivar">@object_nl</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:object_nl</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:object_nl</span>) -196: <span class="ruby-ivar">@array_nl</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:array_nl</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:array_nl</span>) -197: <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 kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:allow_nan</span>) -198: <span class="ruby-ivar">@ascii_only</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:ascii_only</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-value">:ascii_only</span>) -199: <span class="ruby-keyword kw">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 cmt"># defaults to 19</span> -200: <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-value">19</span> -201: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:max_nesting</span>] -202: <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:max_nesting</span>] -203: <span class="ruby-keyword kw">else</span> -204: <span class="ruby-ivar">@max_nesting</span> = <span class="ruby-value">0</span> -205: <span class="ruby-keyword kw">end</span> -206: <span class="ruby-keyword kw">self</span> -207: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="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 <tt>obj</tt> 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 cmt"># File lib/json/pure/generator.rb, line 222</span> -222: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generate</span>(<span class="ruby-identifier">obj</span>) -223: <span class="ruby-identifier">result</span> = <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">to_json</span>(<span class="ruby-keyword kw">self</span>) -224: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">result</span> <span class="ruby-operator">!~</span> <span class="ruby-regexp re">/\A\s*(?:\[.*\]|\{.*\})\s*\Z/</span> -225: <span class="ruby-identifier">raise</span> <span class="ruby-constant">GeneratorError</span>, <span class="ruby-value str">"only generation of JSON objects or arrays allowed"</span> -226: <span class="ruby-keyword kw">end</span> -227: <span class="ruby-identifier">result</span> -228: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - - <div class="method"> - <div class="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 cmt"># File lib/json/pure/generator.rb, line 211</span> -211: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_h</span> -212: <span class="ruby-identifier">result</span> = {} -213: <span class="ruby-keyword kw">for</span> <span class="ruby-identifier">iv</span> <span class="ruby-keyword kw">in</span> <span class="ruby-node">]indent space space_before object_nl array_nl allow_nan max_nesting]</span> -214: <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">"@#{iv}"</span>) -215: <span class="ruby-keyword kw">end</span> -216: <span class="ruby-identifier">result</span> -217: <span class="ruby-keyword kw">end</span></pre> - </div> - </div> - - </div> - -</div> - </div> - </body> -</html>
\ No newline at end of file |