123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257 |
- <?xml version="1.0" encoding="utf-8" ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <!-- This file is generated by Nim. -->
- <html xmlns="https://www.w3.org/1999/xhtml" xml:lang="en" lang="en" data-theme="auto">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>std/socketstreams</title>
- <!-- Google fonts -->
- <link href='https://fonts.googleapis.com/css?family=Lato:400,600,900' rel='stylesheet' type='text/css'/>
- <link href='https://fonts.googleapis.com/css?family=Source+Code+Pro:400,500,600' rel='stylesheet' type='text/css'/>
- <!-- Favicon -->
- <link rel="shortcut icon" href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA=="/>
- <link rel="icon" type="image/png" sizes="32x32" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4QQQEwksSS9ZWwAAAk1JREFUWMPtll2ITVEUx39nn/O7Y5qR8f05wtCUUr6ZIS++8pEnkZInPImneaCQ5METNdOkeFBKUhMPRIkHKfEuUZSUlGlKPN2TrgfncpvmnntnmlEyq1Z7t89/rf9a6+y99oZxGZf/XeIq61EdtgKXgdXA0xrYAvBjOIF1AI9zvjcC74BSpndrJPkBWDScTF8Aa4E3wDlgHbASaANmVqlcCnwHvgDvgVfAJ+AikAAvgfVZwLnSVZHZaOuKoQi3ZOMi4NkYkpe1p4J7A8BpYAD49hfIy/oqG0+hLomiKP2L5L+1ubn5115S+3OAn4EnwBlgMzCjyt6ZAnQCJ4A7wOs88iRJHvw50HoujuPBoCKwHWiosy8MdfZnAdcHk8dxXFJ3VQbQlCTJvRBCGdRbD4M6uc5glpY3eAihpN5S5w12diSEcCCEcKUO4ljdr15T76ur1FDDLIQQ3qv71EdDOe3Kxj3leRXyk+pxdWnFWod6Wt2bY3de3aSuUHcPBVimHs7mK9WrmeOF6lR1o9qnzskh2ar2qm1qizpfXaPeVGdlmGN5pb09qMxz1Xb1kLqgzn1RyH7JUXW52lr5e/Kqi9qpto7V1atuUzfnARrV7jEib1T76gG2qxdGmXyiekkt1GswPTtek0aBfJp6YySGBfWg2tPQ0FAYgf1stUfdmdcjarbYJEniKIq6gY/Aw+zWHAC+p2labGpqiorFYgGYCEzN7oQdQClN07O1/EfDyGgC0ALMBdYAi4FyK+4H3gLPsxfR1zRNi+NP7nH5J+QntnXe5B5mpfQAAAAASUVORK5CYII=">
- <!-- CSS -->
- <link rel="stylesheet" type="text/css" href="nimdoc.out.css?v=2.3.1">
- <!-- JS -->
- <script type="text/javascript" src="dochack.js?v=2.3.1"></script>
- </head>
- <body>
- <div class="document" id="documentId">
- <div class="container">
- <h1 class="title">std/socketstreams</h1>
- <div class="row">
- <div class="three columns">
- <div class="theme-select-wrapper">
- <label for="theme-select">Theme: </label>
- <select id="theme-select" onchange="setTheme(this.value)">
- <option value="auto">🌗 Match OS</option>
- <option value="dark">🌑 Dark</option>
- <option value="light">🌕 Light</option>
- </select>
- </div>
- <div id="global-links">
- <ul class="simple-boot">
- <li><a href="manual.html">Manual</a></li>
- <li><a href="lib.html">Standard library</a></li>
- <li> <a id="indexLink" href="theindex.html">Index</a></li>
- <li><a href="compiler/theindex.html">Compiler docs</a></li>
- <li><a href="https://nim-lang.github.io/fusion/theindex.html">Fusion docs</a></li>
- <li><a href="https://nim-lang.github.io/Nim/">devel</a>, <a href="https://nim-lang.org/documentation.html">stable</a></li>
- </ul>
- </div>
- <div id="searchInputDiv">
- Search: <input type="search" id="searchInput"
- oninput="search()" />
- </div>
-
- <ul class="simple simple-toc" id="toc-list">
- <li><a class="reference" id="examples_toc" href="#examples">Examples</a></li>
- <li>
- <a class="reference reference-toplevel" href="#6" id="56">Imports</a>
- </li>
- <li>
- <details open>
- <summary><a class="reference reference-toplevel" href="#7" id="57">Types</a></summary>
- <ul class="simple simple-toc-section">
- <li><a class="reference" href="#ReadSocketStream" title="ReadSocketStream = ref ReadSocketStreamObj">ReadSocketStream</a></li>
- <li><a class="reference" href="#ReadSocketStreamObj" title="ReadSocketStreamObj = object of StreamObj">ReadSocketStreamObj</a></li>
- <li><a class="reference" href="#WriteSocketStream" title="WriteSocketStream = ref WriteSocketStreamObj">WriteSocketStream</a></li>
- <li><a class="reference" href="#WriteSocketStreamObj" title="WriteSocketStreamObj = object of ReadSocketStreamObj">WriteSocketStreamObj</a></li>
- </ul>
- </details>
- </li>
- <li>
- <details open>
- <summary><a class="reference reference-toplevel" href="#12" id="62">Procs</a></summary>
- <ul class="simple simple-toc-section">
- <ul class="simple nested-toc-section">newReadSocketStream
- <li><a class="reference" href="#newReadSocketStream%2CSocket" title="newReadSocketStream(s: Socket): owned ReadSocketStream">newReadSocketStream(s: Socket): owned ReadSocketStream</a></li>
- </ul>
- <ul class="simple nested-toc-section">newWriteSocketStream
- <li><a class="reference" href="#newWriteSocketStream%2CSocket" title="newWriteSocketStream(s: Socket): owned WriteSocketStream">newWriteSocketStream(s: Socket): owned WriteSocketStream</a></li>
- </ul>
- <ul class="simple nested-toc-section">resetStream
- <li><a class="reference" href="#resetStream%2CReadSocketStream" title="resetStream(s: ReadSocketStream)">resetStream(s: ReadSocketStream)</a></li>
- <li><a class="reference" href="#resetStream%2CWriteSocketStream" title="resetStream(s: WriteSocketStream)">resetStream(s: WriteSocketStream)</a></li>
- </ul>
- </ul>
- </details>
- </li>
- </ul>
- </div>
- <div class="nine columns" id="content">
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L1" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L1" class="link-seesrc" target="_blank" >Edit</a>
- <div id="tocRoot"></div>
-
- <p class="module-desc"><p>This module provides an implementation of the streams interface for sockets. It contains two separate implementations, a <a class="reference external" href="#ReadSocketStream">ReadSocketStream</a> and a <a class="reference external" href="#WriteSocketStream">WriteSocketStream</a>.</p>
- <p>The <tt class="docutils literal"><span class="pre"><span class="Identifier">ReadSocketStream</span></span></tt> only supports reading, peeking, and seeking. It reads into a buffer, so even by seeking backwards it will only read the same position a single time from the underlying socket. To clear the buffer and free the data read into it you can call <tt class="docutils literal"><span class="pre"><span class="Identifier">resetStream</span></span></tt>, this will also reset the position back to 0 but won't do anything to the underlying socket.</p>
- <p>The <tt class="docutils literal"><span class="pre"><span class="Identifier">WriteSocketStream</span></span></tt> allows both reading and writing, but it performs the reads on the internal buffer. So by writing to the buffer you can then read back what was written but without receiving anything from the socket. You can also set the position and overwrite parts of the buffer, and to send anything over the socket you need to call <tt class="docutils literal"><span class="pre"><span class="Identifier">flush</span></span></tt> at which point you can't write anything to the buffer before the point of the flush (but it can still be read). Again to empty the underlying buffer you need to call <tt class="docutils literal"><span class="pre"><span class="Identifier">resetStream</span></span></tt>.</p>
- <h1><a class="toc-backref" id="examples" href="#examples">Examples</a></h1><p><pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Identifier">socketstreams</span>
- <span class="Keyword">var</span>
- <span class="Identifier">socket</span> <span class="Operator">=</span> <span class="Identifier">newSocket</span><span class="Punctuation">(</span><span class="Identifier">AF_INET</span><span class="Punctuation">,</span> <span class="Identifier">SOCK_DGRAM</span><span class="Punctuation">,</span> <span class="Identifier">IPPROTO_UDP</span><span class="Punctuation">)</span>
- <span class="Identifier">stream</span> <span class="Operator">=</span> <span class="Identifier">newReadSocketStream</span><span class="Punctuation">(</span><span class="Identifier">socket</span><span class="Punctuation">)</span>
- <span class="Identifier">socket</span><span class="Operator">.</span><span class="Identifier">sendTo</span><span class="Punctuation">(</span><span class="StringLit">"127.0.0.1"</span><span class="Punctuation">,</span> <span class="Identifier">Port</span><span class="Punctuation">(</span><span class="DecNumber">12345</span><span class="Punctuation">)</span><span class="Punctuation">,</span> <span class="StringLit">"SOME REQUEST"</span><span class="Punctuation">)</span>
- <span class="Identifier">echo</span> <span class="Identifier">stream</span><span class="Operator">.</span><span class="Identifier">readLine</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Will call `recv`</span>
- <span class="Identifier">stream</span><span class="Operator">.</span><span class="Identifier">setPosition</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
- <span class="Identifier">echo</span> <span class="Identifier">stream</span><span class="Operator">.</span><span class="Identifier">readLine</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Will return the read line from the buffer</span>
- <span class="Identifier">stream</span><span class="Operator">.</span><span class="Identifier">resetStream</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Buffer is now empty, position is 0</span>
- <span class="Identifier">echo</span> <span class="Identifier">stream</span><span class="Operator">.</span><span class="Identifier">readLine</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Will call `recv` again</span>
- <span class="Identifier">stream</span><span class="Operator">.</span><span class="Identifier">close</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Closes the socket</span></pre></p>
- <p><pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Identifier">socketstreams</span>
- <span class="Keyword">var</span> <span class="Identifier">socket</span> <span class="Operator">=</span> <span class="Identifier">newSocket</span><span class="Punctuation">(</span><span class="Identifier">AF_INET</span><span class="Punctuation">,</span> <span class="Identifier">SOCK_DGRAM</span><span class="Punctuation">,</span> <span class="Identifier">IPPROTO_UDP</span><span class="Punctuation">)</span>
- <span class="Identifier">socket</span><span class="Operator">.</span><span class="Identifier">connect</span><span class="Punctuation">(</span><span class="StringLit">"127.0.0.1"</span><span class="Punctuation">,</span> <span class="Identifier">Port</span><span class="Punctuation">(</span><span class="DecNumber">12345</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">var</span> <span class="Identifier">sendStream</span> <span class="Operator">=</span> <span class="Identifier">newWriteSocketStream</span><span class="Punctuation">(</span><span class="Identifier">socket</span><span class="Punctuation">)</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">write</span> <span class="StringLit">"NOM"</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">setPosition</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span>
- <span class="Identifier">echo</span> <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">peekStr</span><span class="Punctuation">(</span><span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Comment"># OM</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">write</span> <span class="StringLit">"I"</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">setPosition</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
- <span class="Identifier">echo</span> <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">readStr</span><span class="Punctuation">(</span><span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Comment"># NIM</span>
- <span class="Identifier">echo</span> <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">getPosition</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># 3</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">flush</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># This actually performs the writing to the socket</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">setPosition</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span>
- <span class="Identifier">sendStream</span><span class="Operator">.</span><span class="Identifier">write</span> <span class="StringLit">"I"</span> <span class="Comment"># Throws an error as we can't write into an already sent buffer</span></pre></p>
- </p>
- <div class="section" id="6">
- <h1><a class="toc-backref" href="#6">Imports</a></h1>
- <dl class="item">
- <a class="reference external" href="net.html">net</a>, <a class="reference external" href="streams.html">streams</a>
- </dl>
- </div>
- <div class="section" id="7">
- <h1><a class="toc-backref" href="#7">Types</a></h1>
- <dl class="item">
- <div id="ReadSocketStream">
- <dt><pre><a href="socketstreams.html#ReadSocketStream"><span class="Identifier">ReadSocketStream</span></a> <span class="Other">=</span> <span class="Keyword">ref</span> <a href="socketstreams.html#ReadSocketStreamObj"><span class="Identifier">ReadSocketStreamObj</span></a></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L70" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L70" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="ReadSocketStreamObj">
- <dt><pre><a href="socketstreams.html#ReadSocketStreamObj"><span class="Identifier">ReadSocketStreamObj</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <a href="streams.html#StreamObj"><span class="Identifier">StreamObj</span></a></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L71" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L71" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="WriteSocketStream">
- <dt><pre><a href="socketstreams.html#WriteSocketStream"><span class="Identifier">WriteSocketStream</span></a> <span class="Other">=</span> <span class="Keyword">ref</span> <a href="socketstreams.html#WriteSocketStreamObj"><span class="Identifier">WriteSocketStreamObj</span></a></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L75" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L75" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="WriteSocketStreamObj">
- <dt><pre><a href="socketstreams.html#WriteSocketStreamObj"><span class="Identifier">WriteSocketStreamObj</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <a href="socketstreams.html#ReadSocketStreamObj"><span class="Identifier">ReadSocketStreamObj</span></a></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L76" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L76" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </dl>
- </div>
- <div class="section" id="12">
- <h1><a class="toc-backref" href="#12">Procs</a></h1>
- <dl class="item">
- <div id="newReadSocketStream-procs-all">
- <div id="newReadSocketStream,Socket">
- <dt><pre><span class="Keyword">proc</span> <a href="#newReadSocketStream%2CSocket"><span class="Identifier">newReadSocketStream</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="net.html#Socket"><span class="Identifier">Socket</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">owned</span> <span class="Identifier">ReadSocketStream</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
- <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L155" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L155" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="newWriteSocketStream-procs-all">
- <div id="newWriteSocketStream,Socket">
- <dt><pre><span class="Keyword">proc</span> <a href="#newWriteSocketStream%2CSocket"><span class="Identifier">newWriteSocketStream</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="net.html#Socket"><span class="Identifier">Socket</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">owned</span> <span class="Identifier">WriteSocketStream</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
- <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L169" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L169" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="resetStream-procs-all">
- <div id="resetStream,ReadSocketStream">
- <dt><pre><span class="Keyword">proc</span> <a href="#resetStream%2CReadSocketStream"><span class="Identifier">resetStream</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="socketstreams.html#ReadSocketStream"><span class="Identifier">ReadSocketStream</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L165" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L165" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="resetStream,WriteSocketStream">
- <dt><pre><span class="Keyword">proc</span> <a href="#resetStream%2CWriteSocketStream"><span class="Identifier">resetStream</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="socketstreams.html#WriteSocketStream"><span class="Identifier">WriteSocketStream</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/std/socketstreams.nim#L180" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/std/socketstreams.nim#L180" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- </dl>
- </div>
- </div>
- </div>
- <div class="twelve-columns footer">
- <span class="nim-sprite"></span>
- <br>
- <small style="color: var(--hint);">Made with Nim. Generated: 2025-02-03 14:57:27 UTC</small>
- </div>
- </div>
- </div>
- <script defer data-domain="nim-lang.org" src="https://plausible.io/js/plausible.js"></script>
-
- </body>
- </html>
|