1 | <!doctype html>
|
2 | <html>
|
3 |
|
4 | <head>
|
5 | <meta name="generator" content="JSDoc 3.6.2">
|
6 | <meta charset="utf-8">
|
7 | <title>keyu 2.0.0 » Module: conversions</title>
|
8 | <link rel="stylesheet" href="https://brick.a.ssl.fastly.net/Karla:400,400i,700,700i" type="text/css">
|
9 | <link rel="stylesheet" href="https://brick.a.ssl.fastly.net/Noto+Serif:400,400i,700,700i" type="text/css">
|
10 | <link rel="stylesheet" href="https://brick.a.ssl.fastly.net/Inconsolata:500" type="text/css">
|
11 | <link href="css/baseline.css" rel="stylesheet">
|
12 | </head>
|
13 |
|
14 | <body onload="prettyPrint()">
|
15 | <nav id="jsdoc-navbar" role="navigation" class="jsdoc-navbar">
|
16 | <div id="jsdoc-navbar-container">
|
17 | <div id="jsdoc-navbar-content">
|
18 | <a href="index.html" class="jsdoc-navbar-package-name">keyu 2.<wbr>0.<wbr>0</a>
|
19 | </div>
|
20 | </div>
|
21 | </nav>
|
22 | <div id="jsdoc-body-container">
|
23 | <div id="jsdoc-content">
|
24 | <div id="jsdoc-content-container">
|
25 | <div id="jsdoc-main" role="main">
|
26 | <header class="page-header">
|
27 | <div class="symbol-detail-labels"><span class="label label-kind">module</span></div>
|
28 | <h1><small></small><span class="symbol-name">conversions</span></h1>
|
29 | <p class="source-link">Source: <a href="conversions_index.js.html">conversions/<wbr>index.<wbr>js</a></p>
|
30 | <div class="symbol-description">
|
31 | </div>
|
32 | <dl class="dl-compact">
|
33 | </dl>
|
34 | </header>
|
35 | <section id="summary">
|
36 | <div class="summary-callout">
|
37 | <h2 class="summary-callout-heading">Methods</h2>
|
38 | <div class="summary-content">
|
39 | <div class="summary-column">
|
40 | <dl class="dl-summary-callout">
|
41 | <dt><a href="module-conversions.html#~floatOr">floatOr(defaultValue, data)</a></dt>
|
42 | <dd>
|
43 | </dd>
|
44 | <dt><a href="module-conversions.html#~intOr">intOr(defaultValue, data)</a></dt>
|
45 | <dd>
|
46 | </dd>
|
47 | </dl>
|
48 | </div>
|
49 | <div class="summary-column">
|
50 | <dl class="dl-summary-callout">
|
51 | <dt><a href="module-conversions.html#~jsonOr">jsonOr(defaultValue, data)</a></dt>
|
52 | <dd>
|
53 | </dd>
|
54 | <dt><a href="module-conversions.html#~parseOr">parseOr(parser, evaluator, defaultValue, data)</a></dt>
|
55 | <dd>
|
56 | </dd>
|
57 | </dl>
|
58 | </div>
|
59 | <div class="summary-column">
|
60 | <dl class="dl-summary-callout">
|
61 | <dt><a href="module-conversions.html#~setPrecisionOr">setPrecisionOr(decimals, defaultValue, num)</a></dt>
|
62 | <dd>
|
63 | </dd>
|
64 | </dl>
|
65 | </div>
|
66 | </div>
|
67 | </div>
|
68 | </section>
|
69 | <section>
|
70 | <h2>Methods</h2>
|
71 | <section>
|
72 | <div class="symbol-detail-labels"><span class="label label-inner">inner</span></div>
|
73 | <h3 id="~floatOr"><span class="symbol-name">floatOr</span><span class="signature"><span class="signature-params">(defaultValue, data)</span> → <span class="signature-returns"> (Float or any type)</span></span></h3>
|
74 | <p>Converts passed data to float or returns the default value on failure. <sup>(curried)</sup></p>
|
75 | <section>
|
76 | <h4>
|
77 | Example
|
78 | </h4>
|
79 | <div>
|
80 | <pre class="prettyprint"><code>floatOr(-1,"x33x") // -> -1
|
81 | floatOr(() => throw Errot("Ups!"),"x33x") // -> Error: Ups!
|
82 | floatOr(-1)('45.553') // -> 45.553</code></pre>
|
83 | </div>
|
84 | </section>
|
85 | <section>
|
86 | <h4>Parameters</h4>
|
87 | <table class="jsdoc-details-table">
|
88 | <thead>
|
89 | <tr>
|
90 | <th>Name</th>
|
91 | <th>Type</th>
|
92 | <th>Optional</th>
|
93 | <th>Description</th>
|
94 | </tr>
|
95 | </thead>
|
96 | <tbody>
|
97 | <tr>
|
98 | <td>
|
99 | <p>defaultValue</p>
|
100 | </td>
|
101 | <td>
|
102 | <p>(Object or function())</p>
|
103 | </td>
|
104 | <td>
|
105 | <p> </p>
|
106 | </td>
|
107 | <td>
|
108 | <p>default value or function to be returned if it fails.</p>
|
109 | </td>
|
110 | </tr>
|
111 | <tr>
|
112 | <td>
|
113 | <p>data</p>
|
114 | </td>
|
115 | <td>
|
116 | <p>any type</p>
|
117 | </td>
|
118 | <td>
|
119 | <p> </p>
|
120 | </td>
|
121 | <td>
|
122 | <p>any kind of data that we want to parse as float</p>
|
123 | </td>
|
124 | </tr>
|
125 | </tbody>
|
126 | </table>
|
127 | </section>
|
128 | <dl class="dl-compact">
|
129 | <dt>See also</dt>
|
130 | <dd>
|
131 | <p><a href="https://en.wikipedia.org/wiki/Currying">Curring</a></p>
|
132 | </dd>
|
133 | <dd>
|
134 | <p><a href="https://github.com/nerac/keyu/blob/master/test/conversionsTest.js">conversionsTest.js</a></p>
|
135 | </dd>
|
136 | <dt>Returns</dt>
|
137 | <dd>
|
138 | <p><code>(Float or any type)</code> <p>Parsed value or the default one.</p>
|
139 | </p>
|
140 | </dd>
|
141 | </dl>
|
142 | <div class="symbol-detail-labels"><span class="label label-inner">inner</span></div>
|
143 | <h3 id="~intOr"><span class="symbol-name">intOr</span><span class="signature"><span class="signature-params">(defaultValue, data)</span> → <span class="signature-returns"> (Int or any type)</span></span></h3>
|
144 | <p>Converts passed data to int or returns the default value on failure. <sup>(curried)</sup></p>
|
145 | <section>
|
146 | <h4>
|
147 | Example
|
148 | </h4>
|
149 | <div>
|
150 | <pre class="prettyprint"><code>intOr(-1,"x33x") // -> -1
|
151 | intOr(() => throw Errot("Ups!"),"x33x") // -> Error: Ups!
|
152 | intOr(-1)('45.553') // -> 45</code></pre>
|
153 | </div>
|
154 | </section>
|
155 | <section>
|
156 | <h4>Parameters</h4>
|
157 | <table class="jsdoc-details-table">
|
158 | <thead>
|
159 | <tr>
|
160 | <th>Name</th>
|
161 | <th>Type</th>
|
162 | <th>Optional</th>
|
163 | <th>Description</th>
|
164 | </tr>
|
165 | </thead>
|
166 | <tbody>
|
167 | <tr>
|
168 | <td>
|
169 | <p>defaultValue</p>
|
170 | </td>
|
171 | <td>
|
172 | <p>(Object or function())</p>
|
173 | </td>
|
174 | <td>
|
175 | <p> </p>
|
176 | </td>
|
177 | <td>
|
178 | <p>default value or function to be returned if it fails.</p>
|
179 | </td>
|
180 | </tr>
|
181 | <tr>
|
182 | <td>
|
183 | <p>data</p>
|
184 | </td>
|
185 | <td>
|
186 | <p>any type</p>
|
187 | </td>
|
188 | <td>
|
189 | <p> </p>
|
190 | </td>
|
191 | <td>
|
192 | <p>any kind of data that we want to parse as int</p>
|
193 | </td>
|
194 | </tr>
|
195 | </tbody>
|
196 | </table>
|
197 | </section>
|
198 | <dl class="dl-compact">
|
199 | <dt>See also</dt>
|
200 | <dd>
|
201 | <p><a href="https://en.wikipedia.org/wiki/Currying">Curring</a></p>
|
202 | </dd>
|
203 | <dd>
|
204 | <p><a href="https://github.com/nerac/keyu/blob/master/test/conversionsTest.js">conversionsTest.js</a></p>
|
205 | </dd>
|
206 | <dt>Returns</dt>
|
207 | <dd>
|
208 | <p><code>(Int or any type)</code> <p>Parsed value or the default one.</p>
|
209 | </p>
|
210 | </dd>
|
211 | </dl>
|
212 | <div class="symbol-detail-labels"><span class="label label-inner">inner</span></div>
|
213 | <h3 id="~jsonOr"><span class="symbol-name">jsonOr</span><span class="signature"><span class="signature-params">(defaultValue, data)</span> → <span class="signature-returns"> (Object or any type)</span></span></h3>
|
214 | <p>Converts passed data into a JSON or returns the default value on failure. <sup>(curried)</sup></p>
|
215 | <section>
|
216 | <h4>
|
217 | Example
|
218 | </h4>
|
219 | <div>
|
220 | <pre class="prettyprint"><code>jsonOr(-1,"sfdjl") // -> -1
|
221 | jsonOr(() => throw Errot("Ups!"),"sfdjl") // -> Error: Ups!
|
222 | jsonOr(-1)('{"a":1}') // -> {a:1}</code></pre>
|
223 | </div>
|
224 | </section>
|
225 | <section>
|
226 | <h4>Parameters</h4>
|
227 | <table class="jsdoc-details-table">
|
228 | <thead>
|
229 | <tr>
|
230 | <th>Name</th>
|
231 | <th>Type</th>
|
232 | <th>Optional</th>
|
233 | <th>Description</th>
|
234 | </tr>
|
235 | </thead>
|
236 | <tbody>
|
237 | <tr>
|
238 | <td>
|
239 | <p>defaultValue</p>
|
240 | </td>
|
241 | <td>
|
242 | <p>(Object or function())</p>
|
243 | </td>
|
244 | <td>
|
245 | <p> </p>
|
246 | </td>
|
247 | <td>
|
248 | <p>default value or function to be returned if it fails.</p>
|
249 | </td>
|
250 | </tr>
|
251 | <tr>
|
252 | <td>
|
253 | <p>data</p>
|
254 | </td>
|
255 | <td>
|
256 | <p>any type</p>
|
257 | </td>
|
258 | <td>
|
259 | <p> </p>
|
260 | </td>
|
261 | <td>
|
262 | <p>any kind of data that we want to parse as JSON</p>
|
263 | </td>
|
264 | </tr>
|
265 | </tbody>
|
266 | </table>
|
267 | </section>
|
268 | <dl class="dl-compact">
|
269 | <dt>See also</dt>
|
270 | <dd>
|
271 | <p><a href="https://en.wikipedia.org/wiki/Currying">Curring</a></p>
|
272 | </dd>
|
273 | <dd>
|
274 | <p><a href="https://github.com/nerac/keyu/blob/master/test/conversionsTest.js">conversionsTest.js</a></p>
|
275 | </dd>
|
276 | <dt>Returns</dt>
|
277 | <dd>
|
278 | <p><code>(Object or any type)</code> <p>Parsed value or the default one.</p>
|
279 | </p>
|
280 | </dd>
|
281 | </dl>
|
282 | <div class="symbol-detail-labels"><span class="label label-inner">inner</span></div>
|
283 | <h3 id="~parseOr"><span class="symbol-name">parseOr</span><span class="signature"><span class="signature-params">(parser, evaluator, defaultValue, data)</span> → <span class="signature-returns"> any type</span></span></h3>
|
284 | <p>Generic function. Parses a value using a parser function, then
|
285 | evaluates the result with an evaluator function. <sup>(curried)</sup></p>
|
286 | <p>If the parser throws any exception or the evaluator fails the default value is returned.</p>
|
287 | <section>
|
288 | <h4>
|
289 | Example
|
290 | </h4>
|
291 | <div>
|
292 | <pre class="prettyprint"><code>jsonOr = parseOr(JSON.parse,isObject);
|
293 | jsonOr(0,{}) // -> {}
|
294 | jsonOr(0,null) // -> 0</code></pre>
|
295 | </div>
|
296 | </section>
|
297 | <section>
|
298 | <h4>Parameters</h4>
|
299 | <table class="jsdoc-details-table">
|
300 | <thead>
|
301 | <tr>
|
302 | <th>Name</th>
|
303 | <th>Type</th>
|
304 | <th>Optional</th>
|
305 | <th>Description</th>
|
306 | </tr>
|
307 | </thead>
|
308 | <tbody>
|
309 | <tr>
|
310 | <td>
|
311 | <p>parser</p>
|
312 | </td>
|
313 | <td>
|
314 | <p>function()</p>
|
315 | </td>
|
316 | <td>
|
317 | <p> </p>
|
318 | </td>
|
319 | <td>
|
320 | <p>parse function to transform the data input</p>
|
321 | </td>
|
322 | </tr>
|
323 | <tr>
|
324 | <td>
|
325 | <p>evaluator</p>
|
326 | </td>
|
327 | <td>
|
328 | <p>function()</p>
|
329 | </td>
|
330 | <td>
|
331 | <p> </p>
|
332 | </td>
|
333 | <td>
|
334 | <p>evaluates the output of the parser</p>
|
335 | </td>
|
336 | </tr>
|
337 | <tr>
|
338 | <td>
|
339 | <p>defaultValue</p>
|
340 | </td>
|
341 | <td>
|
342 | <p>any type</p>
|
343 | </td>
|
344 | <td>
|
345 | <p> </p>
|
346 | </td>
|
347 | <td>
|
348 | <p>value/function to be returned/executed if it fails</p>
|
349 | </td>
|
350 | </tr>
|
351 | <tr>
|
352 | <td>
|
353 | <p>data</p>
|
354 | </td>
|
355 | <td>
|
356 | <p>any type</p>
|
357 | </td>
|
358 | <td>
|
359 | <p> </p>
|
360 | </td>
|
361 | <td>
|
362 | <p>any kind of data that we want to parse</p>
|
363 | </td>
|
364 | </tr>
|
365 | </tbody>
|
366 | </table>
|
367 | </section>
|
368 | <dl class="dl-compact">
|
369 | <dt>See also</dt>
|
370 | <dd>
|
371 | <p><a href="https://github.com/nerac/keyu/blob/master/test/conversionsTest.js">conversionsTest.js</a></p>
|
372 | </dd>
|
373 | <dd>
|
374 | <p><a href="https://en.wikipedia.org/wiki/Currying">Curring</a></p>
|
375 | </dd>
|
376 | <dt>Returns</dt>
|
377 | <dd>
|
378 | <p><code>any type</code> <p>parsed value or default one</p>
|
379 | </p>
|
380 | </dd>
|
381 | </dl>
|
382 | <div class="symbol-detail-labels"><span class="label label-inner">inner</span></div>
|
383 | <h3 id="~setPrecisionOr"><span class="symbol-name">setPrecisionOr</span><span class="signature"><span class="signature-params">(decimals, defaultValue, num)</span> → <span class="signature-returns"> Float</span></span></h3>
|
384 | <p>Fixes the number of decimals of a float.
|
385 | Returns the default value if non numeric value passed.<sup>(curried)</sup></p>
|
386 | <section>
|
387 | <h4>
|
388 | Example
|
389 | </h4>
|
390 | <div>
|
391 | <pre class="prettyprint"><code>setPrecisionOr(1,"fail", 3.44) // -> 3.4
|
392 | setPrecisionOr(1,"fail", null) // -> "fail"
|
393 | setPrecisionOr(0,"fail", 3.44) // -> 3</code></pre>
|
394 | </div>
|
395 | </section>
|
396 | <section>
|
397 | <h4>Parameters</h4>
|
398 | <table class="jsdoc-details-table">
|
399 | <thead>
|
400 | <tr>
|
401 | <th>Name</th>
|
402 | <th>Type</th>
|
403 | <th>Optional</th>
|
404 | <th>Description</th>
|
405 | </tr>
|
406 | </thead>
|
407 | <tbody>
|
408 | <tr>
|
409 | <td>
|
410 | <p>decimals</p>
|
411 | </td>
|
412 | <td>
|
413 | <p>Int</p>
|
414 | </td>
|
415 | <td>
|
416 | <p> </p>
|
417 | </td>
|
418 | <td>
|
419 | <p>number of decimals to fix.</p>
|
420 | </td>
|
421 | </tr>
|
422 | <tr>
|
423 | <td>
|
424 | <p>defaultValue</p>
|
425 | </td>
|
426 | <td>
|
427 | <p>(function() or any type)</p>
|
428 | </td>
|
429 | <td>
|
430 | <p> </p>
|
431 | </td>
|
432 | <td>
|
433 | <p>value to be returned if non number received</p>
|
434 | </td>
|
435 | </tr>
|
436 | <tr>
|
437 | <td>
|
438 | <p>num</p>
|
439 | </td>
|
440 | <td>
|
441 | <p>Float</p>
|
442 | </td>
|
443 | <td>
|
444 | <p> </p>
|
445 | </td>
|
446 | <td>
|
447 | <p>float number that we want to fix it's decimals.</p>
|
448 | </td>
|
449 | </tr>
|
450 | </tbody>
|
451 | </table>
|
452 | </section>
|
453 | <dl class="dl-compact">
|
454 | <dt>See also</dt>
|
455 | <dd>
|
456 | <p><a href="https://en.wikipedia.org/wiki/Currying">Curring</a></p>
|
457 | </dd>
|
458 | <dd>
|
459 | <p><a href="https://github.com/nerac/keyu/blob/master/test/conversionsTest.js">conversionsTest.js</a></p>
|
460 | </dd>
|
461 | <dt>Returns</dt>
|
462 | <dd>
|
463 | <p><code>Float</code> </p>
|
464 | </dd>
|
465 | </dl>
|
466 | </section>
|
467 | </section>
|
468 | </div>
|
469 | </div>
|
470 | <nav id="jsdoc-toc-nav" role="navigation"></nav>
|
471 | </div>
|
472 | </div>
|
473 | <footer id="jsdoc-footer" class="jsdoc-footer">
|
474 | <div id="jsdoc-footer-container">
|
475 | <p>
|
476 | Generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc</a> 3.6.2 on June 17, 2019.
|
477 | </p>
|
478 | </div>
|
479 | </footer>
|
480 | <script src="scripts/jquery.min.js"></script>
|
481 | <script src="scripts/jquery.cookie.js"></script>
|
482 | <script src="scripts/tree.jquery.js"></script>
|
483 | <script src="scripts/prettify.js"></script>
|
484 | <script src="scripts/jsdoc-toc.js"></script>
|
485 | <script src="scripts/linenumber.js"></script>
|
486 | <script src="scripts/scrollanchor.js"></script>
|
487 | </body>
|
488 |
|
489 | </html> |
\ | No newline at end of file |