UNPKG

fluentnode

Version:

Fluent apis for node (based on the concepts used in C#'s FluentSharp

470 lines (305 loc) 15.2 kB
<!DOCTYPE html> <html> <head> <title>Number.litcoffee</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initial-scale=1.0; maximum-scale=1.0; user-scalable=0;"> <link rel="stylesheet" media="all" href="docco.css" /> </head> <body> <div id="container"> <div id="background"></div> <ul id="jump_to"> <li> <a class="large" href="javascript:void(0);">Jump To &hellip;</a> <a class="small" href="javascript:void(0);">+</a> <div id="jump_wrapper"> <div id="jump_page"> <a class="source" href="assert_Array.html"> assert_Array.litcoffee </a> <a class="source" href="assert_Boolean.html"> assert_Boolean.litcoffee </a> <a class="source" href="assert_Function.html"> assert_Function.litcoffee </a> <a class="source" href="assert_Number.html"> assert_Number.litcoffee </a> <a class="source" href="assert_Object.html"> assert_Object.litcoffee </a> <a class="source" href="assert_String.html"> assert_String.litcoffee </a> <a class="source" href="fluentnode.html"> fluentnode.coffee </a> <a class="source" href="index.html"> index.md </a> <a class="source" href="Array.html"> Array.litcoffee </a> <a class="source" href="Boolean.html"> Boolean.litcoffee </a> <a class="source" href="Function.html"> Function.litcoffee </a> <a class="source" href="Number.html"> Number.litcoffee </a> <a class="source" href="Object.html"> Object.litcoffee </a> <a class="source" href="String.html"> String.litcoffee </a> <a class="source" href="console.html"> console.litcoffee </a> <a class="source" href="crypto.html"> crypto.litcoffee </a> <a class="source" href="fs.html"> fs.litcoffee </a> <a class="source" href="http.GET.html"> http.GET.litcoffee </a> <a class="source" href="http.POST.html"> http.POST.litcoffee </a> <a class="source" href="http.Server.html"> http.Server.litcoffee </a> <a class="source" href="http.html"> http.litcoffee </a> <a class="source" href="path.html"> path.litcoffee </a> <a class="source" href="process.html"> process.litcoffee </a> <a class="source" href="encoding.html"> encoding.litcoffee </a> <a class="source" href="globals.html"> globals.litcoffee </a> <a class="source" href="assert_Array.test.html"> assert_Array.test.coffee </a> <a class="source" href="assert_Boolean.test.html"> assert_Boolean.test.coffee </a> <a class="source" href="assert_Function.test.html"> assert_Function.test.coffee </a> <a class="source" href="assert_Number.test.html"> assert_Number.test.coffee </a> <a class="source" href="assert_Object.test.html"> assert_Object.test.coffee </a> <a class="source" href="assert_String.test.html"> assert_String.test.coffee </a> <a class="source" href="fluentnode.test.html"> fluentnode.test.coffee </a> <a class="source" href="Array.test.html"> Array.test.coffee </a> <a class="source" href="Boolean.test.html"> Boolean.test.coffee </a> <a class="source" href="Function.test.html"> Function.test.coffee </a> <a class="source" href="Number.test.html"> Number.test.coffee </a> <a class="source" href="Object.test.html"> Object.test.coffee </a> <a class="source" href="String.test.html"> String.test.coffee </a> <a class="source" href="console.test.html"> console.test.coffee </a> <a class="source" href="crypto.test.html"> crypto.test.coffee </a> <a class="source" href="fs.test.html"> fs.test.coffee </a> <a class="source" href="http.GET.test.html"> http.GET.test.coffee </a> <a class="source" href="http.POST.test.html"> http.POST.test.coffee </a> <a class="source" href="http.Server.test.html"> http.Server.test.coffee </a> <a class="source" href="http.test.html"> http.test.coffee </a> <a class="source" href="path.test.html"> path.test.coffee </a> <a class="source" href="process.test.html"> process.test.coffee </a> <a class="source" href="encoding.test.html"> encoding.test.coffee </a> <a class="source" href="globals.test.html"> globals.test.coffee </a> </div> </li> </ul> <ul class="sections"> <li id="title"> <div class="annotation"> <h1>Number.litcoffee</h1> </div> </li> <li id="section-1"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-1">&#182;</a> </div> <p>Adds helper methods to the native javascript Number class</p> <p>@.<strong>add</strong> value</p> <p>Returns <code>@</code> incremented by <code>value</code></p> <p>If value is not a number the original value is returned unmodifed</p> <p>Note that the original <code>@</code> value is not modified</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::add = <span class="hljs-function"><span class="hljs-params">(value)</span>-&gt;</span> <span class="hljs-keyword">if</span> is_Number(value) @ + value <span class="hljs-keyword">else</span> @</pre></div></div> </li> <li id="section-2"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-2">&#182;</a> </div> <p>@.<strong>dec</strong> [value]</p> <p>Returns <code>@</code> decremented by 1 or by <code>[value]</code> (if provided)</p> <p>Note that the original <code>@</code> value is not modified</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::dec = <span class="hljs-function"><span class="hljs-params">(value)</span>-&gt;</span> <span class="hljs-keyword">if</span> is_Number(value) @ - value <span class="hljs-keyword">else</span> @ - <span class="hljs-number">1</span></pre></div></div> </li> <li id="section-3"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-3">&#182;</a> </div> <p>@.<strong>in_Between</strong> min, max</p> <p>Returns true if @ is between <code>min</code> and <code>max</code> for example</p> <pre><code class="lang-coffee">(<span class="hljs-number">10</span>).in_Between(<span class="hljs-number">5</span>,<span class="hljs-number">15</span>) <span class="hljs-comment"># returns true</span> (<span class="hljs-number">10</span>).in_Between(<span class="hljs-number">10</span>,<span class="hljs-number">15</span>) <span class="hljs-comment"># returns false</span> (<span class="hljs-number">10</span>).in_Between(<span class="hljs-number">50</span>,<span class="hljs-number">50</span>) <span class="hljs-comment"># returns false</span> </code></pre> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::in_Between = <span class="hljs-function"><span class="hljs-params">(min,max )</span>-&gt;</span> (min &lt; @ &lt; max)</pre></div></div> </li> <li id="section-4"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-4">&#182;</a> </div> <p>@.<strong>inc</strong> [value]</p> <p>Returns <code>@</code> incremented by 1 or by <code>[value]</code> (if provided)</p> <p>Note that the original <code>@</code> value is not modified</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::inc = <span class="hljs-function"><span class="hljs-params">(value)</span>-&gt;</span> <span class="hljs-keyword">if</span> is_Number(value) @ + value <span class="hljs-keyword">else</span> @ + <span class="hljs-number">1</span></pre></div></div> </li> <li id="section-5"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-5">&#182;</a> </div> <p>@.<strong>invoke_After</strong> callback</p> <p>Invokes the <strong>callback</strong> function after <code>@</code> miliseconds</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::invoke_After = <span class="hljs-function"><span class="hljs-params">(callback)</span>-&gt;</span> <span class="hljs-keyword">if</span> callback <span class="hljs-keyword">instanceof</span> Function setTimeout callback, @ <span class="hljs-attribute">Number</span>::wait = <span class="hljs-attribute">Number</span>::invoke_After</pre></div></div> </li> <li id="section-6"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-6">&#182;</a> </div> <p>@.<strong>is_Number</strong></p> <p>Returns true if <code>@</code> is a number</p> <p>Returns false if <code>@</code> is NaN (i.e. Not a Number)</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::is_Number = <span class="hljs-function">-&gt;</span> <span class="hljs-keyword">return</span> @ <span class="hljs-keyword">instanceof</span> Number <span class="hljs-keyword">and</span> @.str().is_Not(<span class="hljs-string">'NaN'</span>)</pre></div></div> </li> <li id="section-7"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-7">&#182;</a> </div> <p>@.<strong>log</strong></p> <p>Logs @ to the console</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::log = <span class="hljs-function">-&gt;</span> <span class="hljs-built_in">console</span>.log @.toString()</pre></div></div> </li> <li id="section-8"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-8">&#182;</a> </div> <p>@.<strong>random</strong></p> <p>returns a random number between 0 and @</p> </div> <div class="content"><div class='highlight'><pre><span class="hljs-attribute">Number</span>::random = <span class="hljs-function">-&gt;</span> ~~(Math.random()*@)</pre></div></div> </li> <li id="section-9"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-9">&#182;</a> </div> <p>@.<strong>str</strong></p> <p>Short version of <code>toString</code></p> <p> Number::str = -&gt; @.toString()</p> <hr> </div> </li> <li id="section-10"> <div class="annotation"> <div class="pilwrap "> <a class="pilcrow" href="#section-10">&#182;</a> </div> <p>back to <a href="index.html">index</a></p> </div> </li> </ul> </div> </body> </html>