ethers.js/docs/documentation/index.html
2020-02-25 14:57:11 -05:00

38 lines
31 KiB
HTML

<html><head><title>Flatworm Docs</title><link rel="stylesheet" type="text/css" href="/static/style.css"></head><body><div class="sidebar"><div class="header"><div class="logo"><a href="/"><div class="image"></div><div class="name">ethers</div><div class="version">v5.0-beta</div></a></div></div><div class="toc"><div><div class="link title"><a href="/">Documentation</a></div><div class="base show link depth-1"><a href="/getting-started/">Getting Started</a></div><div class="hide link depth-2"><a href="/getting-started/#getting-started--installing">Installing</a></div><div class="hide link depth-2"><a href="/getting-started/#getting-started--importing">Importing</a></div><div class="base show link depth-1"><a href="/concepts/">Concepts</a></div><div class="hide link depth-2"><a href="/concepts/events/">Events</a></div><div class="hide link depth-3"><a href="/concepts/events/#events--solidity-topics">Solidity Topics</a></div><div class="hide link depth-2"><a href="/concepts/gas/">Gas</a></div><div class="hide link depth-3"><a href="/concepts/gas/#gas-price">Gas Price</a></div><div class="hide link depth-3"><a href="/concepts/gas/#gas-limit">Gas Limit</a></div><div class="base show link depth-1"><a href="/api/">Application Programming Interface</a></div><div class="hide link depth-2"><a href="/api/contract/">Contract Interaction</a></div><div class="hide link depth-3"><a href="/api/contract/contract/">Contract</a></div><div class="hide link depth-4"><a href="/api/contract/contract/#contract--properties">Properties</a></div><div class="hide link depth-4"><a href="/api/contract/contract/#contract--methods">Methods</a></div><div class="hide link depth-4"><a href="/api/contract/contract/#contract--events">Events</a></div><div class="hide link depth-4"><a href="/api/contract/contract/#contract-metaclass">Meta-Class</a></div><div class="hide link depth-3"><a href="/api/contract/example/">Example: ERC-20 Contract</a></div><div class="hide link depth-4"><a href="/api/contract/example/#example-erc-20-contract--connecting-to-a-contract">Connecting to a Contract</a></div><div class="hide link depth-4"><a href="/api/contract/example/#example-erc-20-contract--properties-inheritted-from-contract">Properties ^^//(inheritted from [[contract]])//^^</a></div><div class="hide link depth-4"><a href="/api/contract/example/#example-erc-20-contract--methods-inheritted-from-contract">Methods ^^//(inheritted from [[contract]])//^^</a></div><div class="hide link depth-4"><a href="/api/contract/example/#erc20-events">Events ^^//(inheritted from Contract)//^^</a></div><div class="hide link depth-4"><a href="/api/contract/example/#example-erc-20-contract--meta-class-methods-added-at-runtime">Meta-Class Methods ^^//(added at Runtime)//^^</a></div><div class="hide link depth-4"><a href="/api/contract/example/#example-erc-20-contract--meta-class-filters-added-at-runtime">Meta-Class Filters ^^//(added at Runtime)//^^</a></div><div class="hide link depth-2"><a href="/api/signer/">Signers</a></div><div class="hide link depth-3"><a href="/api/signer/#signer">Signer</a></div><div class="hide link depth-3"><a href="/api/signer/#wallet">Wallet</a></div><div class="hide link depth-3"><a href="/api/signer/#void-signer">VoidSigner</a></div><div class="hide link depth-3"><a href="/api/signer/#externally-owned-account">ExternallyOwnedAccount</a></div><div class="hide link depth-2"><a href="/api/providers/">Providers</a></div><div class="hide link depth-3"><a href="/api/providers/provider/">Provider</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--accounts-methods">Accounts Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--blocks-methods">Blocks Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--ethereum-naming-service-ens-methods">Ethereum Naming Service (ENS) Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--logs-methods">Logs Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--network-status-methods">Network Status Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--transactions-methods">Transactions Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--event-emitter-methods">Event Emitter Methods</a></div><div class="hide link depth-4"><a href="/api/providers/provider/#provider--inspection-methods">Inspection Methods</a></div><div class="hide link depth-3"><a href="/api/providers/jsonrpc-provider/">JsonRpcProvider</a></div><div class="hide link depth-4"><a href="/api/providers/jsonrpc-provider/#signer-jsonrpc">JsonRpcSigner</a></div><div class="hide link depth-4"><a href="/api/providers/jsonrpc-provider/#provider-jsonrpc-uncheckedsigner">JsonRpcUncheckedSigner</a></div><div class="hide link depth-3"><a href="/api/providers/api-providers/">API Providers</a></div><div class="hide link depth-4"><a href="/api/providers/api-providers/#api-providers--etherscanprovider">EtherscanProvider</a></div><div class="hide link depth-4"><a href="/api/providers/api-providers/#api-providers--infuraprovider">InfuraProvider</a></div><div class="hide link depth-4"><a href="/api/providers/api-providers/#api-providers--alchemyprovider">AlchemyProvider</a></div><div class="hide link depth-4"><a href="/api/providers/api-providers/#api-providers--cloudfrontprovider">CloudfrontProvider</a></div><div class="hide link depth-3"><a href="/api/providers/other/">Other Providers</a></div><div class="hide link depth-4"><a href="/api/providers/other/#provider-fallback">FallbackProvider</a></div><div class="hide link depth-4"><a href="/api/providers/other/#provider-ipc">IpcProvider</a></div><div class="hide link depth-4"><a href="/api/providers/other/#provider-urljsonrpc">UrlJsonRpcProvider</a></div><div class="hide link depth-4"><a href="/api/providers/other/#provider-web3">Web3Provider</a></div><div class="hide link depth-3"><a href="/api/providers/types/">Types</a></div><div class="hide link depth-4"><a href="/api/providers/types/#provider-blocktag">BlockTag</a></div><div class="hide link depth-4"><a href="/api/providers/types/#provider-network">Network</a></div><div class="hide link depth-4"><a href="/api/providers/types/#provider-block">Block</a></div><div class="hide link depth-4"><a href="/api/providers/types/#types--events-and-logs">Events and Logs</a></div><div class="hide link depth-4"><a href="/api/providers/types/#types--transactions">Transactions</a></div><div class="hide link depth-2"><a href="/api/utils/">Utilities</a></div><div class="hide link depth-3"><a href="/api/utils/abi/">Application Binary Interface</a></div><div class="hide link depth-4"><a href="/api/utils/abi/interface/">Interface</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--creating-instances">Creating Instances</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--properties">Properties</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--formatting">Formatting</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--fragment-access">Fragment Access</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--signature-and-topic-hashes">Signature and Topic Hashes</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--encoding-data">Encoding Data</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--decoding-data">Decoding Data</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--parsing">Parsing</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-interface--types">Types</a></div><div class="hide link depth-5"><a href="/api/utils/abi/interface/#abi-fragmentid">Specifying Fragments</a></div><div class="hide link depth-4"><a href="/api/utils/abi/fragments/">Fragments</a></div><div class="hide link depth-5"><a href="/api/utils/abi/fragments/#fragments--formats">Formats</a></div><div class="hide link depth-5"><a href="/api/utils/abi/fragments/#abi-fragment">Fragment</a></div><div class="hide link depth-5"><a href="/api/utils/abi/fragments/#abi-constructorfragment">ConstructorFragment</a></div><div class="hide link depth-5"><a href="/api/utils/abi/fragments/#abi-eventfragment">EventFragment</a></div><div class="hide link depth-5"><a href="/api/utils/abi/fragments/#abi-functionfragment">FunctionFragment</a></div><div class="hide link depth-5"><a href="/api/utils/abi/fragments/#abi-paramtype">ParamType</a></div><div class="hide link depth-3"><a href="/api/utils/address/">Addresses</a></div><div class="hide link depth-4"><a href="/api/utils/address/#address-formats">Address Formats</a></div><div class="hide link depth-4"><a href="/api/utils/address/#addresses--functions">Functions</a></div><div class="hide link depth-3"><a href="/api/utils/bignumber/">BigNumber</a></div><div class="hide link depth-4"><a href="/api/utils/bignumber/#bignumber--types">Types</a></div><div class="hide link depth-4"><a href="/api/utils/bignumber/#bignumber--creating-instances">Creating Instances</a></div><div class="hide link depth-4"><a href="/api/utils/bignumber/#bignumber--methods">Methods</a></div><div class="hide link depth-4"><a href="/api/utils/bignumber/#bignumber--notes">Notes</a></div><div class="hide link depth-3"><a href="/api/utils/bytes/">Byte Manipulation</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--types">Types</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--inspection">Inspection</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--converting-between-arrays-and-hexstrings">Converting between Arrays and Hexstrings</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--array-manipulation">Array Manipulation</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--hexstring-manipulation">Hexstring Manipulation</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--signature-conversion">Signature Conversion</a></div><div class="hide link depth-4"><a href="/api/utils/bytes/#byte-manipulation--random-bytes">Random Bytes</a></div><div class="hide link depth-3"><a href="/api/utils/constants/">Constants</a></div><div class="hide link depth-4"><a href="/api/utils/constants/#constants--bytes">Bytes</a></div><div class="hide link depth-4"><a href="/api/utils/constants/#constants--strings">Strings</a></div><div class="hide link depth-4"><a href="/api/utils/constants/#constants--bignumber">BigNumber</a></div><div class="hide link depth-3"><a href="/api/utils/display-logic/">Display Logic and Input</a></div><div class="hide link depth-4"><a href="/api/utils/display-logic/#display-logic-and-input--units">Units</a></div><div class="hide link depth-4"><a href="/api/utils/display-logic/#display-logic-and-input--functions">Functions</a></div><div class="hide link depth-3"><a href="/api/utils/encoding/">Encoding Utilities</a></div><div class="hide link depth-4"><a href="/api/utils/encoding/#bse58">Base58</a></div><div class="hide link depth-4"><a href="/api/utils/encoding/#base64">Base64</a></div><div class="hide link depth-4"><a href="/api/utils/encoding/#rlp">Recursive-Length Prefix</a></div><div class="hide link depth-3"><a href="/api/utils/fixednumber/">FixedNumber</a></div><div class="hide link depth-4"><a href="/api/utils/fixednumber/#fixednumber--creating-instances">Creating Instances</a></div><div class="hide link depth-4"><a href="/api/utils/fixednumber/#fixednumber--properties">Properties</a></div><div class="hide link depth-4"><a href="/api/utils/fixednumber/#fixednumber--methods">Methods</a></div><div class="hide link depth-4"><a href="/api/utils/fixednumber/#fixedformat">FixedFormat</a></div><div class="hide link depth-3"><a href="/api/utils/hashing/">Hashing Algorithms</a></div><div class="hide link depth-4"><a href="/api/utils/hashing/#hashing-algorithms--cryptographic-hashing">Cryptographic Hashing</a></div><div class="hide link depth-4"><a href="/api/utils/hashing/#hashing-algorithms--common-hashing-helpers">Common Hashing Helpers</a></div><div class="hide link depth-4"><a href="/api/utils/hashing/#hashing-algorithms--solidity-hashing-algorithms">Solidity Hashing Algorithms</a></div><div class="hide link depth-3"><a href="/api/utils/hdnode/">HD Wallet</a></div><div class="hide link depth-4"><a href="/api/utils/hdnode/#hd-wallet--types">Types</a></div><div class="hide link depth-4"><a href="/api/utils/hdnode/#hdnode">HDNode</a></div><div class="hide link depth-4"><a href="/api/utils/hdnode/#hd-wallet--other-functions">Other Functions</a></div><div class="hide link depth-3"><a href="/api/utils/logger/">Logging</a></div><div class="hide link depth-4"><a href="/api/utils/logger/#logger">Logger</a></div><div class="hide link depth-4"><a href="/api/utils/logger/#errors">Errors</a></div><div class="hide link depth-4"><a href="/api/utils/logger/#logger-levels">Log Levels</a></div><div class="hide link depth-3"><a href="/api/utils/properties/">Property Utilities</a></div><div class="hide link depth-3"><a href="/api/utils/signing-key/">Signing Key</a></div><div class="hide link depth-4"><a href="/api/utils/signing-key/#utils-signingkey--other-functions">Other Functions</a></div><div class="hide link depth-3"><a href="/api/utils/strings/">Strings</a></div><div class="hide link depth-4"><a href="/api/utils/strings/#bytes32-string">Bytes32String</a></div><div class="hide link depth-4"><a href="/api/utils/strings/#utf8-string">UTF-8 Strings</a></div><div class="hide link depth-4"><a href="/api/utils/strings/#unicode-normalization-form">UnicodeNormalizationForm</a></div><div class="hide link depth-4"><a href="/api/utils/strings/#utf8error">Custom UTF-8 Error Handling</a></div><div class="hide link depth-3"><a href="/api/utils/transactions/">Transactions</a></div><div class="hide link depth-4"><a href="/api/utils/transactions/#utils-transactions--types">Types</a></div><div class="hide link depth-4"><a href="/api/utils/transactions/#utils-transactions--functions">Functions</a></div><div class="hide link depth-3"><a href="/api/utils/web/">Web Utilities</a></div><div class="hide link depth-3"><a href="/api/utils/wordlists/">Wordlists</a></div><div class="hide link depth-4"><a href="/api/utils/wordlists/#wordlist">Wordlist</a></div><div class="hide link depth-4"><a href="/api/utils/wordlists/#wordlist-languages">Languages</a></div><div class="hide link depth-2"><a href="/api/other/">Other Libraries</a></div><div class="hide link depth-3"><a href="/api/other/assembly/">Assembly</a></div><div class="hide link depth-4"><a href="/api/other/assembly/dialect/">Ethers ASM Dialect</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-opcode">Opcodes</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-label">Labels</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-literal">Literals</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-comment">Comments</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-scope">Scopes</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-datasegment">Data Segment</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-links">Links</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-placeholder">Stack Placeholders</a></div><div class="hide link depth-5"><a href="/api/other/assembly/dialect/#asm-dialect-scripting">Evaluation and Excution</a></div><div class="hide link depth-4"><a href="/api/other/assembly/api/">Utilities</a></div><div class="hide link depth-5"><a href="/api/other/assembly/api/#asm-utilities--assembler">Assembler</a></div><div class="hide link depth-5"><a href="/api/other/assembly/api/#asm-utilities--disassembler">Disassembler</a></div><div class="hide link depth-5"><a href="/api/other/assembly/api/#asm-opcode">Opcode</a></div><div class="hide link depth-4"><a href="/api/other/assembly/ast/">Abstract Syntax Tree</a></div><div class="hide link depth-5"><a href="/api/other/assembly/ast/#asm-ast--types">Types</a></div><div class="hide link depth-5"><a href="/api/other/assembly/ast/#asm-ast--nodes">Nodes</a></div><div class="hide link depth-3"><a href="/api/other/hardware/">Hardware Wallets</a></div><div class="hide link depth-4"><a href="/api/other/hardware/#hw-ledger">LedgerSigner</a></div><div class="base show link depth-1"><a href="/cli/">Command Line Interfaces</a></div><div class="hide link depth-2"><a href="/cli/ethers/">Sandbox Utility</a></div><div class="hide link depth-3"><a href="/cli/ethers/#sandbox-utility--help">Help</a></div><div class="hide link depth-3"><a href="/cli/ethers/#sandbox-utility--examples">Examples</a></div><div class="hide link depth-2"><a href="/cli/asm/">Assembler</a></div><div class="hide link depth-3"><a href="/cli/asm/#cli-asm--help">Help</a></div><div class="hide link depth-3"><a href="/cli/asm/#cli-asm--example-input-files">Example Input Files</a></div><div class="hide link depth-3"><a href="/cli/asm/#cli-asm--assembler-examples">Assembler Examples</a></div><div class="hide link depth-3"><a href="/cli/asm/#cli-asm--disassembler-examples">Disassembler Examples</a></div><div class="hide link depth-2"><a href="/cli/ens/">Ethereum Naming Service</a></div><div class="hide link depth-3"><a href="/cli/ens/#ethereum-naming-service--help">Help</a></div><div class="hide link depth-3"><a href="/cli/ens/#ethereum-naming-service--examples">Examples</a></div><div class="hide link depth-2"><a href="/cli/typescript/">TypeScript</a></div><div class="hide link depth-3"><a href="/cli/typescript/#typescript--help">Help</a></div><div class="hide link depth-3"><a href="/cli/typescript/#typescript--examples">Examples</a></div><div class="hide link depth-2"><a href="/cli/plugin/">Making Your Own</a></div><div class="hide link depth-3"><a href="/cli/plugin/#cli-cli">CLI</a></div><div class="hide link depth-3"><a href="/cli/plugin/#cli-plugin">Plugin</a></div><div class="hide link depth-3"><a href="/cli/plugin/#cli-argparser">ArgParser</a></div><div class="base show link depth-1"><a href="/cookbook/">Cookbook</a></div><div class="base show link depth-1"><a href="/migration/">Migration Guide</a></div><div class="hide link depth-2"><a href="/migration/web3/">Migration: From Web3.js</a></div><div class="hide link depth-3"><a href="/migration/web3/#migration-from-web3-js--contracts">Contracts</a></div><div class="hide link depth-3"><a href="/migration/web3/#migration-from-web3-js--providers">Providers</a></div><div class="hide link depth-3"><a href="/migration/web3/#migration-from-web3-js--numbers">Numbers</a></div><div class="hide link depth-3"><a href="/migration/web3/#migration-from-web3-js--utilities">Utilities</a></div><div class="hide link depth-2"><a href="/migration/ethers-v4/">Migration: From Ethers v4</a></div><div class="hide link depth-3"><a href="/migration/ethers-v4/#migration-v4--bignumber">BigNumber</a></div><div class="hide link depth-3"><a href="/migration/ethers-v4/#migration-v4--contracts">Contracts</a></div><div class="hide link depth-3"><a href="/migration/ethers-v4/#migration-v4--errors">Errors</a></div><div class="hide link depth-3"><a href="/migration/ethers-v4/#migration-v4--interface">Interface</a></div><div class="hide link depth-3"><a href="/migration/ethers-v4/#migration-v4--utilities">Utilities</a></div><div class="hide link depth-3"><a href="/migration/ethers-v4/#migration-v4--wallet">Wallet</a></div><div class="base show link depth-1"><a href="/testing/">Testing</a></div><div class="base show link depth-1"><a href="/contributing/">Contributing and Hacking</a></div><div class="hide link depth-2"><a href="/contributing/#contributing-and-hacking--building">Building</a></div><div class="base myself ancestor ancestor show link depth-1"><a href="/documentation/">Flatworm Docs</a></div><div class="child link depth-2"><a href="/documentation/#flatworm-fragments">Fragments</a></div><div class="child link depth-2"><a href="/documentation/#flatworm-markdown">Markdown</a></div><div class="child link depth-2"><a href="/documentation/#flatworm-config">Configuration</a></div><div class="child link depth-2"><a href="/documentation/#flatworm-extended-directive-functions">Extended Directive Functions</a></div><div class="base show link depth-1"><a href="/license/">License and Copyright</a></div></div></div></div><div class="content"><div class="breadcrumbs"><a href="/">Documentation</a>&nbsp;&nbsp;&raquo;&nbsp;&nbsp;<span class="current">Flatworm Docs</span></div><a name="flatworm-docs"></a><h1 class="show-anchors"><div>Flatworm Docs<div class="anchors"><a class="self" href="#flatworm-docs"></a></div></div></h1>
<p>The <i>Flatworm Docs</i> rendering script is designed to be <b>very</b> simple, but provide enough formatting necessary for documenting JavaScript libraries.</p><p>A lot of its inspiration came from <a href="https://github.com/readthedocs/sphinx_rtd_theme">Read the Docs</a> and the <a href="https://www.sphinx-doc.org/">Sphinx</a> project.</p>
<a name="flatworm-fragments"></a><a name="flatworm-docs--flatworm-fragments"></a><a name="flatworm-fragments"></a><h2 class="show-anchors"><div>Fragments<div class="anchors"><a class="self" href="#flatworm-fragments"></a></div></div></h2>
<p>Flatworm Docs are made up of fragments. A fragment is either a lone body of <a href="/documentation/#flatworm-markdown">markdown</a> text, or a <a href="/documentation/#flatworm-directive">directive</a> for specialized formatting, which may itself have body.</p>
<a name="flatworm-docs--flatworm-fragments--directive-format"></a><h3 class="show-anchors"><div>Directive Format<div class="anchors"><a class="self" href="#flatworm-docs--flatworm-fragments--directive-format"></a></div></div></h3>
<div class="code">_DIRECTIVE:&nbsp;VALUE&nbsp;@&lt;LINK&gt;&nbsp;@META&lt;PARAMETER&gt;<br>BODY<br><br>DIRECTIVE:&nbsp;&nbsp;The&nbsp;directive&nbsp;name<br>VALUE:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Optional;&nbsp;the&nbsp;value&nbsp;to&nbsp;pass&nbsp;to&nbsp;the&nbsp;directive<br>LINK:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Optional;&nbsp;a&nbsp;name&nbsp;for&nbsp;internal&nbsp;linking<br>META:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Optional;&nbsp;extended&nbsp;directive&nbsp;functionality<br>PARAMETER:&nbsp;&nbsp;Optional;&nbsp;value&nbsp;to&nbsp;pass&nbsp;to&nbsp;extended&nbsp;directive&nbsp;functions<br>BODY:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Optional;&nbsp;the&nbsp;directive&nbsp;body&nbsp;(certain&nbsp;directives&nbsp;only)</div>
<a name="flatworm-directive"></a><a name="flatworm-docs--flatworm-fragments--flatworm-directive"></a><a name="flatworm-directive"></a><h3 class="show-anchors"><div>Flatworm Directives<div class="anchors"><a class="self" href="#flatworm-directive"></a></div></div></h3>
<div class="definition show-anchors"><div class="term"><b>_section:</b> <i>TITLE</i></div><div class="body"><p>A <i>section</i> has its <b>TITLE</b> in an H1 font. Sections are linked to in <i>Table of Contents</i> and have a dividing line drawn above them. If an option is specified, it is avaialble as a name for intern linking. There should only be one <code class="inline">_section:</code> per page.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_subsection:</b> <i>TITLE</i></div><div class="body"><p>A <i>subsection</i> has its <b>TITLE</b> in an H2 font. Subsections are linked to in <i>Table of Contents</i> and have a dividing line drawn above them. If an option is specified, it is avaialble as a name for internal linking.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_heading:</b> <i>TITLE</i></div><div class="body"><p>A <i>heading</i> has its <b>TITLE</b> in an H3 font. If an option is specified, it is available as a name for internal linking.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_definition:</b> <i>TERM</i></div><div class="body"><p>A <i>definition</i> has its <b>TERM</b> bolded and the markdown body is indented.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_property:</b> <i>SIGNATURE</i></div><div class="body"><p>A <i>property</i> has its JavaScript <b>SIGNATURE</b> formatted and the markdown body is indented.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_note:</b> <i>TITLE</i></div><div class="body"><p>A <i>note</i> is placed in a blue bordered-box to draw attention to it.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_warning:</b> <i>TITLE</i></div><div class="body"><p>A <i>warning</i> is placed in an orange bordered-box to draw attention to it.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_code:</b> <i>FILENAME</i></div><div class="body"><p>A <i>code</i> reads the <b>FILENAME</b> and depending on the extension adjusts it.</p><p>For JavaScript files, the file is executed, with <code class="inline">//!</code> replaced with the result of the last statement and <code class="inline">//!error</code> is replaced with the throw error. If the error state does not agree, rendering fails.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_toc:</b></div><div class="body"><p>A <i>toc</i> injects a Table of Contents, loading each line of the body as a filename and recursively loads the <i>toc</i> if present, otherwise all the <i>sections</i> and <i>subsections</i>.</p></div></div>
<div class="definition show-anchors"><div class="term"><b>_null:</b></div><div class="body"><p>A <i>null</i> is used to terminated a directive. For example, after a <i>definition</i>, the bodies are indented, so a <i>null</i> can be used to reset the indentation.</p></div></div>
<a name="flatworm-docs--flatworm-fragments--examples"></a><h3 class="show-anchors"><div>Examples</div></h3>
<div class="code">_section:&nbsp;Hello&nbsp;World&nbsp;@&lt;link-to-this-section&gt;<br><br>_subsection:&nbsp;Some&nbsp;Example&nbsp;@&lt;link-to-this-subsection&gt;<br><br>_heading:&nbsp;Large&nbsp;Bold&nbsp;Text&nbsp;@&lt;link-to-this-heading&gt;<br><br>_definition:&nbsp;Flatworm<br>A&nbsp;phylum&nbsp;of&nbsp;relatively&nbsp;**simple**&nbsp;bilaterian,&nbsp;unsegmented,<br>soft-bodied&nbsp;invertebrates.<br><br>_property:&nbsp;String.fromCharCode(code)&nbsp;=&gt;&nbsp;string<br>Returns&nbsp;a&nbsp;string&nbsp;created&nbsp;from&nbsp;//code//,&nbsp;a&nbsp;sequence&nbsp;of<br>UTF-16&nbsp;code&nbsp;units.<br><br>_code:&nbsp;filename.js<br><br>_toc:<br>&nbsp;&nbsp;&nbsp;&nbsp;some-file<br>&nbsp;&nbsp;&nbsp;&nbsp;some-directory<br><br>_definition&nbsp;and&nbsp;reset&nbsp;the&nbsp;indentation.<br><br>_note:&nbsp;Title<br>This&nbsp;is&nbsp;placed&nbsp;in&nbsp;a&nbsp;blue&nbsp;box.<br><br>_warning:&nbsp;Title<br>This&nbsp;is&nbsp;placed&nbsp;in&nbsp;an&nbsp;orange&nbsp;box.<br><br>_null:<br>This&nbsp;breaks&nbsp;out&nbsp;of&nbsp;a&nbsp;directive.&nbsp;For&nbsp;example,&nbsp;to&nbsp;end&nbsp;a</div>
<a name="flatworm-markdown"></a><a name="flatworm-docs--flatworm-markdown"></a><a name="flatworm-markdown"></a><h2 class="show-anchors"><div>Markdown<div class="anchors"><a class="self" href="#flatworm-markdown"></a></div></div></h2>
<p>The markdown is simple and does not have the flexibility of other dialects, but allows for <b>bold</b>, <i>italic</i>, <u>underlined</u>, <code class="inline">monospaced</code>, <sup>super-scripted</sup> text, supporting <a href="/documentation/#flatworm-markdown">links</a> and lists.</p>
<div class="code">**bold&nbsp;text**<br><br>//italic&nbsp;text//<br><br>__underlined&nbsp;text__<br><br>``monospace&nbsp;code``<br><br>^^superscript&nbsp;text^^<br><br>-&nbsp;This&nbsp;is&nbsp;a&nbsp;list<br>-&nbsp;With&nbsp;bullet&nbsp;points<br>-&nbsp;With&nbsp;a&nbsp;total&nbsp;of&nbsp;three&nbsp;items<br><br>This&nbsp;is&nbsp;separated&nbsp;by&nbsp;--&nbsp;an&nbsp;en-dash.<br><br>This&nbsp;is&nbsp;separated&nbsp;by&nbsp;---&nbsp;an&nbsp;em-dash.<br><br>This&nbsp;is&nbsp;a&nbsp;[Link&nbsp;to&nbsp;Ethereum](https://ethereum.org)&nbsp;and&nbsp;this<br>is&nbsp;an&nbsp;[Internal&nbsp;Link](some-link).<br><br>This&nbsp;is&nbsp;a&nbsp;self-titled&nbsp;link&nbsp;[[https://ethereumorg]]&nbsp;and&nbsp;this<br>[[some-link]]&nbsp;will&nbsp;use&nbsp;the&nbsp;title&nbsp;from&nbsp;its&nbsp;directives&nbsp;value.</div>
<a name="flatworm-config"></a><a name="flatworm-docs--flatworm-config"></a><a name="flatworm-config"></a><h2 class="show-anchors"><div>Configuration<div class="anchors"><a class="self" href="#flatworm-config"></a></div></div></h2>
<p>Configuration is optional (but highly recommended) and may be either a simple JSON file (config.json) or a JS file (config.js) placed in the top of the source folder.</p><p>TODO: example JSON and example JS</p>
<a name="flatworm-extended-directive-functions"></a><a name="flatworm-docs--flatworm-extended-directive-functions"></a><a name="flatworm-extended-directive-functions"></a><h2 class="show-anchors"><div>Extended Directive Functions<div class="anchors"><a class="self" href="#flatworm-extended-directive-functions"></a></div></div></h2>
<a name="flatworm-docs--flatworm-extended-directive-functions--inherit-markdown"></a><h3 class="show-anchors"><div>@INHERIT&lt;markdown&gt;<div class="anchors"><a class="self" href="#flatworm-docs--flatworm-extended-directive-functions--inherit-markdown"></a></div></div></h3>
<p>Adds an inherits description to a directive. The <i>markdown</i> may contain links.</p><p>This extended directive function is available for:</p><ul><li>_section</li><li>_subsetion</li><li>_heading</li></ul>
<a name="flatworm-docs--flatworm-extended-directive-functions--nav-text"></a><h3 class="show-anchors"><div>@NAV&lt;text&gt;<div class="anchors"><a class="self" href="#flatworm-docs--flatworm-extended-directive-functions--nav-text"></a></div></div></h3>
<p>Sets the name in the breadcrumbs when not the current node.</p><p>This extended directive function is available for:</p><ul><li>_section</li></ul>
<a name="flatworm-docs--flatworm-extended-directive-functions--src-text"></a><h3 class="show-anchors"><div>@SRC&lt;text&gt;<div class="anchors"><a class="self" href="#flatworm-docs--flatworm-extended-directive-functions--src-text"></a></div></div></h3>
<p>Calls the configuration <code class="inline">getSourceUrl(text, VALUE)</code> to get a URL which will be linked to by a link next to the <i>directive</i>.</p><p>This extended directive function requires an advanced <code class="inline">config.js</code> <a href="/documentation/#flatworm-config">Configuration</a> file since it requires a JavaScript function.</p><p>This extended directive function is available for:</p><ul><li>_section</li><li>_subsetion</li><li>_heading</li><li>_property</li></ul><div class="footer"><div class="nav previous"><a href="/contributing/"><span class="arrow">&larr;</span>Contributing and Hacking</a></div> <div class="nav next"><a href="/license/">License and Copyright<span class="arrow">&rarr;</span></a></div></div><div class="copyright">The content of this site is licensed under the <a href="https://choosealicense.com/licenses/cc-by-4.0/">Creative Commons Attribution 4.0 International License</a>.</div></div><script src="/script.js" type="text/javascript"></script></body></html><!-- ContentHash:3f81924cd4630cee8b9edf4dc4b13a01214cc22ad496b0e70df4553d376842a5 -->