prepare 0.2.0
[awesomized/ext-ion] / docs / v0.2 / ion.html
diff --git a/docs/v0.2/ion.html b/docs/v0.2/ion.html
new file mode 100644 (file)
index 0000000..7a544fb
--- /dev/null
@@ -0,0 +1,477 @@
+<!doctype html>
+<html>
+       <head>
+               <meta charset="utf-8">
+               <title>
+                                                       ion -
+                                               mdref
+               </title>
+               <meta property="og:title" content="ion">
+               <meta name="viewport" content="width=1200, initial-scale=0.5">
+                                       <base href="/ext-ion/v0.2/">
+                       <meta http-equiv="Content-Location" content="/ext-ion/v0.2/ion">
+                       <link rel="stylesheet" href="index.css">
+               
+               <link rel="shortcut icon" href="/ext-ion/v0.2/favicon.ico">
+       </head>
+       <body>
+               <div class="page">
+               
+<div class="sidebar">
+       
+       <div class="edit">
+               <a href="https://github.com/awesomized/ext-ion/edit/master/ion.stub.php">Edit</a>
+       </div>
+       
+       
+       <ul>
+               <li>&lsh; <a href="./">Home</a>
+                       
+                       <ul>
+                               <li>
+                                       
+                                                       &circlearrowright; <strong><a href="./ion">ion</a></strong>
+
+                                                       
+                                                       <ul>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/: Contributing">★ Contributing</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/: Security">★ Security</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/: Tutorial">★ Tutorial</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Catalog">Catalog</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Decimal">Decimal</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Decimal/Context">Context</a>  
+                                                                               <ul>
+                                                                                               
+                                                                                       <li>&rdsh; <a href="./ion/Decimal/Context/Dec128">Dec128</a>
+                                                                                       </li>
+                                                                                                                                       
+                                                                                       <li>&rdsh; <a href="./ion/Decimal/Context/Dec32">Dec32</a>
+                                                                                       </li>
+                                                                                                                                       
+                                                                                       <li>&rdsh; <a href="./ion/Decimal/Context/Dec64">Dec64</a>
+                                                                                       </li>
+                                                                                                                                       
+                                                                                       <li>&rdsh; <a href="./ion/Decimal/Context/DecMax">DecMax</a>
+                                                                                       </li>
+                                                                                                                                       
+                                                                                       <li>&rdsh; <a href="./ion/Decimal/Context/Rounding">Rounding</a>
+                                                                                       </li>
+                                                                                                                                               
+                                                                               </ul>
+
+                                                                               </li>
+                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Exception">Exception</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/LOB">LOB</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Reader">Reader</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Reader/Buffer">Buffer</a>     
+                                                                               <ul>
+                                                                                               
+                                                                                       <li>&rdsh; <a href="./ion/Reader/Buffer/Reader">Reader</a>
+                                                                                       </li>
+                                                                                                                                               
+                                                                               </ul>
+
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Reader/Options">Options</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Reader/Reader">Reader</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Reader/Stream">Stream</a>     
+                                                                               <ul>
+                                                                                               
+                                                                                       <li>&rdsh; <a href="./ion/Reader/Stream/Reader">Reader</a>
+                                                                                       </li>
+                                                                                                                                                                                                                                                                                                               
+                                                                               </ul>
+
+                                                                               </li>
+                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Serializer">Serializer</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Serializer/Serializer">Serializer</a>
+                                                                               </li>
+                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Symbol">Symbol</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Symbol/Enum">Enum</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Symbol/ImportLocation">ImportLocation</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Symbol/PHP">PHP</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Symbol/System">System</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Symbol/Table">Table</a>       
+                                                                               <ul>
+                                                                                               
+                                                                                       <li>&rdsh; <a href="./ion/Symbol/Table/Local">Local</a>
+                                                                                       </li>
+                                                                                                                                       
+                                                                                       <li>&rdsh; <a href="./ion/Symbol/Table/Shared">Shared</a>
+                                                                                       </li>
+                                                                                                                                                                                                                                                                                                                                                                                               
+                                                                               </ul>
+
+                                                                               </li>
+                                                                                                                                                                                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Timestamp">Timestamp</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Timestamp/Format">Format</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Timestamp/Precision">Precision</a>
+                                                                               </li>
+                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Type">Type</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Unserializer">Unserializer</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Unserializer/Unserializer">Unserializer</a>
+                                                                               </li>
+                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/Writer">Writer</a>
+                                                                               
+                                                                       <ul>
+                                                                                               
+                                                                               <li>&rdsh; <a href="./ion/Writer/Buffer">Buffer</a>     
+                                                                               <ul>
+                                                                                               
+                                                                                       <li>&rdsh; <a href="./ion/Writer/Buffer/Writer">Writer</a>
+                                                                                       </li>
+                                                                                                                                                                                                                               
+                                                                               </ul>
+
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Writer/Options">Options</a>
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Writer/Stream">Stream</a>     
+                                                                               <ul>
+                                                                                               
+                                                                                       <li>&rdsh; <a href="./ion/Writer/Stream/Writer">Writer</a>
+                                                                                       </li>
+                                                                                                                                               
+                                                                               </ul>
+
+                                                                               </li>
+                                                                                                                                       
+                                                                               <li>&rdsh; <a href="./ion/Writer/Writer">Writer</a>
+                                                                               </li>
+                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
+                                                                       </ul>
+
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/serialize">serialize</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                               <li>
+                                                                       &rdsh; <a href="./ion/unserialize">unserialize</a>
+                                                                       
+                                                               </li>
+                                                               
+                                                       </ul>
+                                                       
+                                                                                                       
+                               </li>
+                       </ul>
+                       
+               </li>
+       </ul>
+</div>
+                                       <meta charset="utf-8"><h1>
+<a class="permalink" href="ion#">#</a>pecl/ion</h1><h2 id="About:">About:<a class="permalink" href="ion#About:">#</a>
+</h2><p>PHP extension wrapping <a href="https://github.com/amzn/ion-c">amzn/ion-c</a>.
+See the <a href="https://amzn.github.io/ion-docs/">Amazon ION specification</a>.</p><h2 id="License:">License:<a class="permalink" href="ion#License:">#</a>
+</h2><p><a href="https://github.com/awesomized/ext-ion/blob/master/LICENSE">BSD-2-Clause</a>;
+see <a href="https://spdx.org/licenses/BSD-2-Clause.html">spdx.org</a>.</p><h2 id="Installation:">Installation:<a class="permalink" href="ion#Installation:">#</a>
+</h2><h3 id="Dependencies:">Dependencies:<a class="permalink" href="ion#Dependencies:">#</a>
+</h3><h4 id="Required:">Required:<a class="permalink" href="ion#Required:">#</a>
+</h4><ul>
+<li>PHP-8.1
+<ul>
+<li>ext/date (standard)</li>
+<li>ext/spl (standard)</li>
+</ul>
+</li>
+</ul><h4 id="Optional:">Optional:<a class="permalink" href="ion#Optional:">#</a>
+</h4><ul>
+<li>
+<a href="https://github.com/amzn/ion-c">amzn/ion-c</a> (bundled as git submodule)</li>
+</ul><h3 id="Trinity:">Trinity:<a class="permalink" href="ion#Trinity:">#</a>
+</h3><pre><code><span style="color: inherit" class="html">
+phpize<br>./configure # --with-php-config=&lt;path/to/php-config&gt;<br>make # -j$(nproc)<br>sudo make install # INSTALL=install<br></span>
+</code></pre><h3 id="PECL">PECL<a class="permalink" href="ion#PECL">#</a>
+</h3><pre><code><span style="color: inherit" class="html">
+pecl install ion<br></span>
+</code></pre><h3 id="PHARext">PHARext<a class="permalink" href="ion#PHARext">#</a>
+</h3><p>Watch out for <a href="https://replicator.pharext.org?ion">PECL replicates</a>
+and pharext packages attached to <a href="./releases">releases</a>.</p><h3 id="Try.with.Docker:">Try with Docker:<a class="permalink" href="ion#Try.with.Docker:">#</a>
+</h3><pre><code><span style="color: inherit" class="html">
+docker build -t php-ion<br>docker run --rm php-ion -r 'echo ion\serialize(ion\Symbol\PHP::asTable());'<br></span>
+</code></pre><h2 id="Editor.Stub:">Editor Stub:<a class="permalink" href="ion#Editor.Stub:">#</a>
+</h2><p>See <a href="https://github.com/awesomized/ext-ion/blob/master/ion.stub.php">ion.stub.php</a>.</p><h2 id="Known.Issues:">Known Issues:<a class="permalink" href="ion#Known.Issues:">#</a>
+</h2><p>Due to <em>private</em> internal state of ion-c's readers and writers,
+instances of the following PHP classes cannot be cloned:</p><ul>
+<li><a href="ion/Reader/Reader">ion\Reader\Reader</a></li>
+<li><a href="ion/Writer/Writer">ion\Writer\Writer</a></li>
+<li><a href="ion/Serializer#PHP">ion\Serializer\PHP</a></li>
+<li><a href="ion/Unserializer#PHP">ion\Unserializer\PHP</a></li>
+</ul><h2 id="Editor.Stub:">Editor Stub:<a class="permalink" href="ion#Editor.Stub:">#</a>
+</h2><p>This extension provides a stub file four your editor's auto-completion.</p><div>
+                                       <p><strong>Download the Stub file:</strong></p>
+                                       <ul style="list-style-type: '»'">
+                                               <li>
+                                                                                                               <a href="ion.stub.php">ion.stub.php</a><br>
+                                                                                                               <small>
+                                                               Last modified:
+                                                               2022-04-28 10:37:35 UTC                                                 </small>
+                                               </li>
+                                       </ul>
+                               </div><h2 id="Functions:">Functions:<a class="permalink" href="ion#Functions:">#</a>
+</h2><ul class="sub-entries sub-functions">
+       
+       <li>
+               <h3 id="serialize">
+<a href="ion/serialize">serialize</a><a class="permalink" href="ion#serialize">#</a>
+</h3>
+               <p>Serialize a PHP value as ION data.</p>
+
+               <p><code><a href="https://php.net/manual/en/language.types.string">string</a></code> <a href="ion/serialize">ion\serialize</a>(<code><a href="https://php.net/manual/en/language.types.declarations#language.types.declarations.mixed">mixed</a></code> <span class="var">$data</span>, [<a href="ion/Serializer">ion\Serializer</a>|<code><a href="https://php.net/manual/en/language.types.array">array</a></code>|<code><a href="https://php.net/manual/en/language.types.null">null</a></code> <span class="var">$serializer</span> = <code><a href="https://php.net/manual/en/language.types.null">NULL</a></code>])</p>
+       </li>
+       
+       <li>
+               <h3 id="unserialize">
+<a href="ion/unserialize">unserialize</a><a class="permalink" href="ion#unserialize">#</a>
+</h3>
+               <p>Unserialize ION data (stream) as PHP value(s).</p>
+
+               <p><code><a href="https://php.net/manual/en/language.types.declarations#language.types.declarations.mixed">mixed</a></code> <a href="ion/unserialize">ion\unserialize</a>(<code><a href="https://php.net/manual/en/language.types.string">string</a></code>|<code><a href="https://php.net/manual/en/language.types.resource">resource</a></code> <span class="var">$data</span>, [<a href="ion/Unserializer">ion\Unserializer</a>|<code><a href="https://php.net/manual/en/language.types.array">array</a></code>|<code><a href="https://php.net/manual/en/language.types.null">null</a></code> <span class="var">$unserializer</span> = <code><a href="https://php.net/manual/en/language.types.null">NULL</a></code>])</p>
+       </li>
+       
+</ul><h2 id="Namespaces.Interfaces.and.Classes:">Namespaces, Interfaces and Classes:<a class="permalink" href="ion#Namespaces.Interfaces.and.Classes:">#</a>
+</h2><ul class="sub-entries sub-ns-classes">
+       
+       <li>
+               <h3 id="Catalog">
+<a href="ion/Catalog">Catalog</a><a class="permalink" href="ion#Catalog">#</a>
+</h3>
+               <p>The Catalog holds a collection of <a href="ion/Symbol/Table">ion\Symbol\Table</a> instances queried from <a href="ion/Reader">ion\Reader</a> and <a href="ion/Writer">ion\Writer</a> instances.</p>
+
+               <p><em>class</em> <a href="ion/Catalog">ion\Catalog</a> <em>implements</em> <code><a href="https://php.net/manual/en/class.countable">Countable</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="Decimal">
+<a href="ion/Decimal">Decimal</a><a class="permalink" href="ion#Decimal">#</a>
+</h3>
+               <p>An arbitrary precision fixed point decimal.</p>
+
+               <p><em>class</em> <a href="ion/Decimal">ion\Decimal</a> <em>implements</em> <code><a href="https://php.net/manual/en/class.stringable">Stringable</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="Exception">
+<a href="ion/Exception">Exception</a><a class="permalink" href="ion#Exception">#</a>
+</h3>
+               <p>Base exception for the ION extension.</p>
+
+               <p><em>class</em> <a href="ion/Exception">ion\Exception</a> <em>extends</em> <code><a href="https://php.net/manual/en/class.exception">Exception</a></code> <em>implements</em> <code><a href="https://php.net/manual/en/class.throwable">Throwable</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="LOB">
+<a href="ion/LOB">LOB</a><a class="permalink" href="ion#LOB">#</a>
+</h3>
+               <p>A large object.</p>
+
+               <p><em>class</em> <a href="ion/LOB">ion\LOB</a></p>
+       </li>
+       
+       <li>
+               <h3 id="Reader">
+<a href="ion/Reader">Reader</a><a class="permalink" href="ion#Reader">#</a>
+</h3>
+               <p>ION reader API.</p>
+
+               <p><em>interface</em> <a href="ion/Reader">ion\Reader</a> <em>implements</em> <code><a href="https://php.net/manual/en/class.recursiveiterator">RecursiveIterator</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="Serializer">
+<a href="ion/Serializer">Serializer</a><a class="permalink" href="ion#Serializer">#</a>
+</h3>
+               <p>Serializer <em>interface</em>, used to customize <a href="ion/serialize">ion\serialize</a>()'s behavior.</p>
+
+               <p><em>interface</em> <a href="ion/Serializer">ion\Serializer</a></p>
+       </li>
+       
+       <li>
+               <h3 id="Symbol">
+<a href="ion/Symbol">Symbol</a><a class="permalink" href="ion#Symbol">#</a>
+</h3>
+               
+               <p><em>class</em> <a href="ion/Symbol">ion\Symbol</a> <em>implements</em> <code><a href="https://php.net/manual/en/class.stringable">Stringable</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="Timestamp">
+<a href="ion/Timestamp">Timestamp</a><a class="permalink" href="ion#Timestamp">#</a>
+</h3>
+               <p>An ION Timestamp.</p>
+
+               <p><em>class</em> <a href="ion/Timestamp">ion\Timestamp</a> <em>extends</em> <code><a href="https://php.net/manual/en/class.datetime">DateTime</a></code> <em>implements</em> <code><a href="https://php.net/manual/en/class.datetimeinterface">DateTimeInterface</a></code>, <code><a href="https://php.net/manual/en/class.stringable">Stringable</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="Type">
+<a href="ion/Type">Type</a><a class="permalink" href="ion#Type">#</a>
+</h3>
+               <p>ION data type.</p>
+
+               <p><code><a href="https://php.net/manual/en/language.types.enumerations">enum</a></code> <a href="ion/Type">ion\Type</a> <em>implements</em> <code><a href="https://php.net/manual/en/class.backedenum">BackedEnum</a></code></p>
+       </li>
+       
+       <li>
+               <h3 id="Unserializer">
+<a href="ion/Unserializer">Unserializer</a><a class="permalink" href="ion#Unserializer">#</a>
+</h3>
+               <p>Unserializer <em>interface</em>, used to customize <a href="ion/unserialize">ion\unserialize</a>()'s behavior.</p>
+
+               <p><em>interface</em> <a href="ion/Unserializer">ion\Unserializer</a></p>
+       </li>
+       
+       <li>
+               <h3 id="Writer">
+<a href="ion/Writer">Writer</a><a class="permalink" href="ion#Writer">#</a>
+</h3>
+               <p>ION writer API.</p>
+
+               <p><em>interface</em> <a href="ion/Writer">ion\Writer</a></p>
+       </li>
+       
+</ul>                          
+                       <div class="comments">
+                                                                               <style>.giscus-frame {min-height: 16em;}</style>
+       <script>
+               function giscus_load(button) {
+                       let script = document.createElement("script");
+                                               script.setAttribute("data-repo", 'awesomized/ext-ion');
+                                               script.setAttribute("data-category", 'Comments on Docs');
+                                               script.setAttribute("data-repo-id", 'R_kgDOGfXEXw');
+                                               script.setAttribute("data-category-id", 'DIC_kwDOGfXEX84CBHuf');
+                                               script.setAttribute("data-mapping", 'og:title');
+                                               script.setAttribute("data-input-position", 'bottom');
+                                               script.setAttribute("data-reactions-enabled", false);
+                                               script.setAttribute("data-theme", 'light');
+                                               script.setAttribute("data-lang", 'en');
+                       
+                       script.src = "//giscus.app/client.js";
+                       button.parentNode.replaceChild(script, button);
+               }
+       </script>
+       <button class="activator" onclick="giscus_load(this)">Show Comments from Github Discussions</button>
+                               
+                       </div>
+               
+                       <footer>
+                               
+<ul>
+       <li><a href="https://github.com/m6w6/mdref">mdref-v3.0
+</a></li>
+       <li><a href="LICENSE">&copy; 2013-2022          All rights reserved.</a></li>
+       <li>
+</li>
+</ul>
+
+                       </footer>
+               
+                       <script src="index.js" defer></script>
+               
+               </div>
+       </body>
+</html>