nutritional_calculator 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. checksums.yaml +7 -0
  2. data/.DS_Store +0 -0
  3. data/.coveralls.yml +1 -0
  4. data/.gitignore +12 -0
  5. data/.rspec +2 -0
  6. data/.travis.yml +5 -0
  7. data/Gemfile +6 -0
  8. data/Guardfile +82 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +44 -0
  11. data/Rakefile +6 -0
  12. data/bin/console +14 -0
  13. data/bin/setup +8 -0
  14. data/docs/NutritionalCalculator.html +423 -0
  15. data/docs/NutritionalCalculator/Food.html +912 -0
  16. data/docs/NutritionalCalculator/FoodGroup.html +498 -0
  17. data/docs/NutritionalCalculator/LinkedList.html +1312 -0
  18. data/docs/NutritionalCalculator/LinkedList/Node.html +409 -0
  19. data/docs/_index.html +151 -0
  20. data/docs/class_list.html +51 -0
  21. data/docs/css/common.css +1 -0
  22. data/docs/css/full_list.css +58 -0
  23. data/docs/css/style.css +492 -0
  24. data/docs/file.README.html +138 -0
  25. data/docs/file_list.html +56 -0
  26. data/docs/frames.html +17 -0
  27. data/docs/index.html +138 -0
  28. data/docs/js/app.js +248 -0
  29. data/docs/js/full_list.js +216 -0
  30. data/docs/js/jquery.js +4 -0
  31. data/docs/method_list.html +275 -0
  32. data/docs/top-level-namespace.html +110 -0
  33. data/lib/files/food_database.config +22 -0
  34. data/lib/files/glycemic_index.config +8 -0
  35. data/lib/files/nutritional_file.txt +5 -0
  36. data/lib/files/nutritional_group.config +22 -0
  37. data/lib/nutritional_calculator.rb +55 -0
  38. data/lib/nutritional_calculator/food.rb +99 -0
  39. data/lib/nutritional_calculator/foodgroup.rb +32 -0
  40. data/lib/nutritional_calculator/linkedlist.rb +194 -0
  41. data/lib/nutritional_calculator/plate.rb +294 -0
  42. data/lib/nutritional_calculator/sort_methods.rb +34 -0
  43. data/lib/nutritional_calculator/version.rb +4 -0
  44. data/nutritional_calculator.gemspec +40 -0
  45. metadata +186 -0
@@ -0,0 +1,1312 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: NutritionalCalculator::LinkedList
8
+
9
+ &mdash; Documentation by YARD 0.9.9
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "NutritionalCalculator::LinkedList";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../_index.html">Index (L)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../NutritionalCalculator.html" title="NutritionalCalculator (module)">NutritionalCalculator</a></span></span>
41
+ &raquo;
42
+ <span class="title">LinkedList</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: NutritionalCalculator::LinkedList
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">NutritionalCalculator::LinkedList</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+ <dl>
91
+ <dt>Includes:</dt>
92
+ <dd>Enumerable</dd>
93
+ </dl>
94
+
95
+
96
+
97
+
98
+
99
+
100
+ <dl>
101
+ <dt>Defined in:</dt>
102
+ <dd>lib/nutritional_calculator/linkedlist.rb</dd>
103
+ </dl>
104
+
105
+ </div>
106
+
107
+ <h2>Overview</h2><div class="docstring">
108
+ <div class="discussion">
109
+
110
+ <p>Clase que representa a una lista doblemente enlazada.</p>
111
+
112
+
113
+ </div>
114
+ </div>
115
+ <div class="tags">
116
+
117
+
118
+ </div><h2>Defined Under Namespace</h2>
119
+ <p class="children">
120
+
121
+
122
+
123
+
124
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="LinkedList/Node.html" title="NutritionalCalculator::LinkedList::Node (class)">Node</a></span>
125
+
126
+
127
+ </p>
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+ <h2>
137
+ Instance Method Summary
138
+ <small><a href="#" class="summary_toggle">collapse</a></small>
139
+ </h2>
140
+
141
+ <ul class="summary">
142
+
143
+ <li class="public ">
144
+ <span class="summary_signature">
145
+
146
+ <a href="#[]-instance_method" title="#[] (instance method)">#<strong>[]</strong>(pos) &#x21d2; value<sup>?</sup> </a>
147
+
148
+
149
+
150
+ </span>
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+ <span class="summary_desc"><div class='inline'>
161
+ <p>Método que accede a un elemento dada su posición en la lista.</p>
162
+ </div></span>
163
+
164
+ </li>
165
+
166
+
167
+ <li class="public ">
168
+ <span class="summary_signature">
169
+
170
+ <a href="#back-instance_method" title="#back (instance method)">#<strong>back</strong> &#x21d2; value<sup>?</sup> </a>
171
+
172
+
173
+
174
+ </span>
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+ <span class="summary_desc"><div class='inline'>
185
+ <p>Método que accede al último elemento de la lista.</p>
186
+ </div></span>
187
+
188
+ </li>
189
+
190
+
191
+ <li class="public ">
192
+ <span class="summary_signature">
193
+
194
+ <a href="#each-instance_method" title="#each (instance method)">#<strong>each</strong> &#x21d2; Object </a>
195
+
196
+
197
+
198
+ </span>
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+ <span class="summary_desc"><div class='inline'>
209
+ <p>Método que pasa a cada elemento de la lista un bloque para que se ejecute.</p>
210
+ </div></span>
211
+
212
+ </li>
213
+
214
+
215
+ <li class="public ">
216
+ <span class="summary_signature">
217
+
218
+ <a href="#erase-instance_method" title="#erase (instance method)">#<strong>erase</strong>(value) &#x21d2; Object </a>
219
+
220
+
221
+
222
+ </span>
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+ <span class="summary_desc"><div class='inline'>
233
+ <p>Método que busca la primera ocurrencia de un elemento en la lista y lo
234
+ elimina.</p>
235
+ </div></span>
236
+
237
+ </li>
238
+
239
+
240
+ <li class="public ">
241
+ <span class="summary_signature">
242
+
243
+ <a href="#front-instance_method" title="#front (instance method)">#<strong>front</strong> &#x21d2; value<sup>?</sup> </a>
244
+
245
+
246
+
247
+ </span>
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+ <span class="summary_desc"><div class='inline'>
258
+ <p>Método que accede al valor del primer elemento de la lista.</p>
259
+ </div></span>
260
+
261
+ </li>
262
+
263
+
264
+ <li class="public ">
265
+ <span class="summary_signature">
266
+
267
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong> &#x21d2; LinkedList </a>
268
+
269
+
270
+
271
+ </span>
272
+
273
+
274
+ <span class="note title constructor">constructor</span>
275
+
276
+
277
+
278
+
279
+
280
+
281
+
282
+
283
+ <span class="summary_desc"><div class='inline'>
284
+ <p>Constructor que inicializa una lista vacía.</p>
285
+ </div></span>
286
+
287
+ </li>
288
+
289
+
290
+ <li class="public ">
291
+ <span class="summary_signature">
292
+
293
+ <a href="#insert-instance_method" title="#insert (instance method)">#<strong>insert</strong>(*values) &#x21d2; Object </a>
294
+
295
+
296
+
297
+ </span>
298
+
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+ <span class="summary_desc"><div class='inline'>
308
+ <p>Método que inserta un conjunto de valores por la parte posterior de la
309
+ lista.</p>
310
+ </div></span>
311
+
312
+ </li>
313
+
314
+
315
+ <li class="public ">
316
+ <span class="summary_signature">
317
+
318
+ <a href="#pop_back-instance_method" title="#pop_back (instance method)">#<strong>pop_back</strong> &#x21d2; Object </a>
319
+
320
+
321
+
322
+ </span>
323
+
324
+
325
+
326
+
327
+
328
+
329
+
330
+
331
+
332
+ <span class="summary_desc"><div class='inline'>
333
+ <p>Método que extrae el último elemento posterior de la lista.</p>
334
+ </div></span>
335
+
336
+ </li>
337
+
338
+
339
+ <li class="public ">
340
+ <span class="summary_signature">
341
+
342
+ <a href="#pop_front-instance_method" title="#pop_front (instance method)">#<strong>pop_front</strong> &#x21d2; Object </a>
343
+
344
+
345
+
346
+ </span>
347
+
348
+
349
+
350
+
351
+
352
+
353
+
354
+
355
+
356
+ <span class="summary_desc"><div class='inline'>
357
+ <p>Método que extrae el primer elemento de la lista.</p>
358
+ </div></span>
359
+
360
+ </li>
361
+
362
+
363
+ <li class="public ">
364
+ <span class="summary_signature">
365
+
366
+ <a href="#push_back-instance_method" title="#push_back (instance method)">#<strong>push_back</strong>(value) &#x21d2; Object </a>
367
+
368
+
369
+
370
+ </span>
371
+
372
+
373
+
374
+
375
+
376
+
377
+
378
+
379
+
380
+ <span class="summary_desc"><div class='inline'>
381
+ <p>Método que inseta un valor por la parte posterior de la lista.</p>
382
+ </div></span>
383
+
384
+ </li>
385
+
386
+
387
+ <li class="public ">
388
+ <span class="summary_signature">
389
+
390
+ <a href="#push_front-instance_method" title="#push_front (instance method)">#<strong>push_front</strong>(value) &#x21d2; Object </a>
391
+
392
+
393
+
394
+ </span>
395
+
396
+
397
+
398
+
399
+
400
+
401
+
402
+
403
+
404
+ <span class="summary_desc"><div class='inline'>
405
+ <p>Método que inseta un valor por la parte delantera de la lista.</p>
406
+ </div></span>
407
+
408
+ </li>
409
+
410
+
411
+ <li class="public ">
412
+ <span class="summary_signature">
413
+
414
+ <a href="#to_s-instance_method" title="#to_s (instance method)">#<strong>to_s</strong> &#x21d2; String </a>
415
+
416
+
417
+
418
+ </span>
419
+
420
+
421
+
422
+
423
+
424
+
425
+
426
+
427
+
428
+ <span class="summary_desc"><div class='inline'>
429
+ <p>Método que transforma el objeto en un String.</p>
430
+ </div></span>
431
+
432
+ </li>
433
+
434
+
435
+ </ul>
436
+
437
+
438
+
439
+ <div id="constructor_details" class="method_details_list">
440
+ <h2>Constructor Details</h2>
441
+
442
+ <div class="method_details first">
443
+ <h3 class="signature first" id="initialize-instance_method">
444
+
445
+ #<strong>initialize</strong> &#x21d2; <tt><span class='object_link'><a href="" title="NutritionalCalculator::LinkedList (class)">LinkedList</a></span></tt>
446
+
447
+
448
+
449
+
450
+
451
+ </h3><div class="docstring">
452
+ <div class="discussion">
453
+
454
+ <p>Constructor que inicializa una lista vacía.</p>
455
+
456
+
457
+ </div>
458
+ </div>
459
+ <div class="tags">
460
+
461
+
462
+ </div><table class="source_code">
463
+ <tr>
464
+ <td>
465
+ <pre class="lines">
466
+
467
+
468
+ 15
469
+ 16
470
+ 17
471
+ 18
472
+ 19
473
+ 20
474
+ 21
475
+ 22
476
+ 23
477
+ 24</pre>
478
+ </td>
479
+ <td>
480
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 15</span>
481
+
482
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span>
483
+
484
+ <span class='comment'># Atribute that represents the head
485
+ </span> <span class='comment'># of the list.
486
+ </span> <span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
487
+
488
+ <span class='comment'># Atribute that represents the tail
489
+ </span> <span class='comment'># of the list.
490
+ </span> <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
491
+ <span class='kw'>end</span></pre>
492
+ </td>
493
+ </tr>
494
+ </table>
495
+ </div>
496
+
497
+ </div>
498
+
499
+
500
+ <div id="instance_method_details" class="method_details_list">
501
+ <h2>Instance Method Details</h2>
502
+
503
+
504
+ <div class="method_details first">
505
+ <h3 class="signature first" id="[]-instance_method">
506
+
507
+ #<strong>[]</strong>(pos) &#x21d2; <tt>value</tt><sup>?</sup>
508
+
509
+
510
+
511
+
512
+
513
+ </h3><div class="docstring">
514
+ <div class="discussion">
515
+
516
+ <p>Método que accede a un elemento dada su posición en la lista.</p>
517
+
518
+
519
+ </div>
520
+ </div>
521
+ <div class="tags">
522
+ <p class="tag_title">Parameters:</p>
523
+ <ul class="param">
524
+
525
+ <li>
526
+
527
+ <span class='name'>pos</span>
528
+
529
+
530
+ <span class='type'>(<tt>number</tt>)</span>
531
+
532
+
533
+
534
+ &mdash;
535
+ <div class='inline'>
536
+ <p>Posición del elemento en la lista.</p>
537
+ </div>
538
+
539
+ </li>
540
+
541
+ </ul>
542
+
543
+ <p class="tag_title">Returns:</p>
544
+ <ul class="return">
545
+
546
+ <li>
547
+
548
+
549
+ <span class='type'>(<tt>value</tt>, <tt>nil</tt>)</span>
550
+
551
+
552
+
553
+ &mdash;
554
+ <div class='inline'>
555
+ <p>Elemento que se encuentra en la posición pos.</p>
556
+ </div>
557
+
558
+ </li>
559
+
560
+ </ul>
561
+
562
+ </div><table class="source_code">
563
+ <tr>
564
+ <td>
565
+ <pre class="lines">
566
+
567
+
568
+ 147
569
+ 148
570
+ 149
571
+ 150
572
+ 151
573
+ 152
574
+ 153
575
+ 154
576
+ 155
577
+ 156
578
+ 157
579
+ 158
580
+ 159
581
+ 160</pre>
582
+ </td>
583
+ <td>
584
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 147</span>
585
+
586
+ <span class='kw'>def</span> <span class='op'>[]</span> <span class='lparen'>(</span><span class='id identifier rubyid_pos'>pos</span><span class='rparen'>)</span>
587
+
588
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='ivar'>@head</span>
589
+ <span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='int'>0</span>
590
+ <span class='kw'>while</span> <span class='id identifier rubyid_current_node'>current_node</span> <span class='kw'>and</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='id identifier rubyid_pos'>pos</span>
591
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
592
+ <span class='id identifier rubyid_i'>i</span> <span class='op'>+=</span> <span class='int'>1</span>
593
+ <span class='kw'>end</span>
594
+ <span class='kw'>if</span> <span class='id identifier rubyid_current_node'>current_node</span>
595
+ <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
596
+ <span class='kw'>else</span>
597
+ <span class='kw'>nil</span>
598
+ <span class='kw'>end</span>
599
+ <span class='kw'>end</span></pre>
600
+ </td>
601
+ </tr>
602
+ </table>
603
+ </div>
604
+
605
+ <div class="method_details ">
606
+ <h3 class="signature " id="back-instance_method">
607
+
608
+ #<strong>back</strong> &#x21d2; <tt>value</tt><sup>?</sup>
609
+
610
+
611
+
612
+
613
+
614
+ </h3><div class="docstring">
615
+ <div class="discussion">
616
+
617
+ <p>Método que accede al último elemento de la lista.</p>
618
+
619
+
620
+ </div>
621
+ </div>
622
+ <div class="tags">
623
+
624
+ <p class="tag_title">Returns:</p>
625
+ <ul class="return">
626
+
627
+ <li>
628
+
629
+
630
+ <span class='type'>(<tt>value</tt>, <tt>nil</tt>)</span>
631
+
632
+
633
+
634
+ &mdash;
635
+ <div class='inline'>
636
+ <p>Último elemento de la lista.</p>
637
+ </div>
638
+
639
+ </li>
640
+
641
+ </ul>
642
+
643
+ </div><table class="source_code">
644
+ <tr>
645
+ <td>
646
+ <pre class="lines">
647
+
648
+
649
+ 135
650
+ 136
651
+ 137
652
+ 138
653
+ 139
654
+ 140
655
+ 141</pre>
656
+ </td>
657
+ <td>
658
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 135</span>
659
+
660
+ <span class='kw'>def</span> <span class='id identifier rubyid_back'>back</span>
661
+ <span class='kw'>if</span> <span class='ivar'>@tail</span>
662
+ <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
663
+ <span class='kw'>else</span>
664
+ <span class='kw'>nil</span>
665
+ <span class='kw'>end</span>
666
+ <span class='kw'>end</span></pre>
667
+ </td>
668
+ </tr>
669
+ </table>
670
+ </div>
671
+
672
+ <div class="method_details ">
673
+ <h3 class="signature " id="each-instance_method">
674
+
675
+ #<strong>each</strong> &#x21d2; <tt>Object</tt>
676
+
677
+
678
+
679
+
680
+
681
+ </h3><div class="docstring">
682
+ <div class="discussion">
683
+
684
+ <p>Método que pasa a cada elemento de la lista un bloque para que se ejecute.</p>
685
+
686
+
687
+ </div>
688
+ </div>
689
+ <div class="tags">
690
+
691
+
692
+ </div><table class="source_code">
693
+ <tr>
694
+ <td>
695
+ <pre class="lines">
696
+
697
+
698
+ 164
699
+ 165
700
+ 166
701
+ 167
702
+ 168
703
+ 169
704
+ 170</pre>
705
+ </td>
706
+ <td>
707
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 164</span>
708
+
709
+ <span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span>
710
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='ivar'>@head</span>
711
+ <span class='kw'>while</span> <span class='id identifier rubyid_current_node'>current_node</span>
712
+ <span class='kw'>yield</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
713
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
714
+ <span class='kw'>end</span>
715
+ <span class='kw'>end</span></pre>
716
+ </td>
717
+ </tr>
718
+ </table>
719
+ </div>
720
+
721
+ <div class="method_details ">
722
+ <h3 class="signature " id="erase-instance_method">
723
+
724
+ #<strong>erase</strong>(value) &#x21d2; <tt>Object</tt>
725
+
726
+
727
+
728
+
729
+
730
+ </h3><div class="docstring">
731
+ <div class="discussion">
732
+
733
+ <p>Método que busca la primera ocurrencia de un elemento en la lista y lo
734
+ elimina.</p>
735
+
736
+
737
+ </div>
738
+ </div>
739
+ <div class="tags">
740
+ <p class="tag_title">Parameters:</p>
741
+ <ul class="param">
742
+
743
+ <li>
744
+
745
+ <span class='name'>value</span>
746
+
747
+
748
+ <span class='type'>(<tt>value</tt>)</span>
749
+
750
+
751
+
752
+ &mdash;
753
+ <div class='inline'><dl class="rdoc-list label-list"><dt>value
754
+ <dd>
755
+ <p>Valor que pretendemos eliminar.</p>
756
+ </dd></dl>
757
+ </div>
758
+
759
+ </li>
760
+
761
+ </ul>
762
+
763
+
764
+ </div><table class="source_code">
765
+ <tr>
766
+ <td>
767
+ <pre class="lines">
768
+
769
+
770
+ 97
771
+ 98
772
+ 99
773
+ 100
774
+ 101
775
+ 102
776
+ 103
777
+ 104
778
+ 105
779
+ 106
780
+ 107
781
+ 108
782
+ 109
783
+ 110
784
+ 111
785
+ 112
786
+ 113
787
+ 114
788
+ 115
789
+ 116
790
+ 117</pre>
791
+ </td>
792
+ <td>
793
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 97</span>
794
+
795
+ <span class='kw'>def</span> <span class='id identifier rubyid_erase'>erase</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
796
+
797
+ <span class='kw'>if</span> <span class='ivar'>@head</span> <span class='kw'>and</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='id identifier rubyid_value'>value</span>
798
+ <span class='id identifier rubyid_pop_front'>pop_front</span>
799
+ <span class='kw'>elsif</span> <span class='ivar'>@tail</span> <span class='kw'>and</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='id identifier rubyid_value'>value</span>
800
+ <span class='id identifier rubyid_pop_back'>pop_back</span>
801
+ <span class='kw'>else</span>
802
+
803
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='ivar'>@head</span>
804
+ <span class='kw'>while</span> <span class='id identifier rubyid_current_node'>current_node</span>
805
+
806
+ <span class='kw'>if</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='id identifier rubyid_value'>value</span>
807
+ <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
808
+ <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span>
809
+ <span class='kw'>end</span>
810
+
811
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
812
+ <span class='kw'>end</span>
813
+
814
+ <span class='kw'>end</span>
815
+ <span class='kw'>end</span></pre>
816
+ </td>
817
+ </tr>
818
+ </table>
819
+ </div>
820
+
821
+ <div class="method_details ">
822
+ <h3 class="signature " id="front-instance_method">
823
+
824
+ #<strong>front</strong> &#x21d2; <tt>value</tt><sup>?</sup>
825
+
826
+
827
+
828
+
829
+
830
+ </h3><div class="docstring">
831
+ <div class="discussion">
832
+
833
+ <p>Método que accede al valor del primer elemento de la lista.</p>
834
+
835
+
836
+ </div>
837
+ </div>
838
+ <div class="tags">
839
+
840
+ <p class="tag_title">Returns:</p>
841
+ <ul class="return">
842
+
843
+ <li>
844
+
845
+
846
+ <span class='type'>(<tt>value</tt>, <tt>nil</tt>)</span>
847
+
848
+
849
+
850
+ &mdash;
851
+ <div class='inline'>
852
+ <p>Primer elemento de la lista.</p>
853
+ </div>
854
+
855
+ </li>
856
+
857
+ </ul>
858
+
859
+ </div><table class="source_code">
860
+ <tr>
861
+ <td>
862
+ <pre class="lines">
863
+
864
+
865
+ 124
866
+ 125
867
+ 126
868
+ 127
869
+ 128
870
+ 129
871
+ 130</pre>
872
+ </td>
873
+ <td>
874
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 124</span>
875
+
876
+ <span class='kw'>def</span> <span class='id identifier rubyid_front'>front</span>
877
+ <span class='kw'>if</span> <span class='ivar'>@head</span>
878
+ <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
879
+ <span class='kw'>else</span>
880
+ <span class='kw'>nil</span>
881
+ <span class='kw'>end</span>
882
+ <span class='kw'>end</span></pre>
883
+ </td>
884
+ </tr>
885
+ </table>
886
+ </div>
887
+
888
+ <div class="method_details ">
889
+ <h3 class="signature " id="insert-instance_method">
890
+
891
+ #<strong>insert</strong>(*values) &#x21d2; <tt>Object</tt>
892
+
893
+
894
+
895
+
896
+
897
+ </h3><div class="docstring">
898
+ <div class="discussion">
899
+
900
+ <p>Método que inserta un conjunto de valores por la parte posterior de la
901
+ lista.</p>
902
+
903
+
904
+ </div>
905
+ </div>
906
+ <div class="tags">
907
+ <p class="tag_title">Parameters:</p>
908
+ <ul class="param">
909
+
910
+ <li>
911
+
912
+ <span class='name'>values</span>
913
+
914
+
915
+ <span class='type'>(<tt>value</tt>)</span>
916
+
917
+
918
+
919
+ &mdash;
920
+ <div class='inline'>
921
+ <p>conjunto de elementos que queremos insertar en la lista.</p>
922
+ </div>
923
+
924
+ </li>
925
+
926
+ </ul>
927
+
928
+
929
+ </div><table class="source_code">
930
+ <tr>
931
+ <td>
932
+ <pre class="lines">
933
+
934
+
935
+ 59
936
+ 60
937
+ 61
938
+ 62
939
+ 63</pre>
940
+ </td>
941
+ <td>
942
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 59</span>
943
+
944
+ <span class='kw'>def</span> <span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_values'>values</span><span class='rparen'>)</span>
945
+ <span class='id identifier rubyid_values'>values</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
946
+ <span class='id identifier rubyid_push_back'>push_back</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
947
+ <span class='kw'>end</span>
948
+ <span class='kw'>end</span></pre>
949
+ </td>
950
+ </tr>
951
+ </table>
952
+ </div>
953
+
954
+ <div class="method_details ">
955
+ <h3 class="signature " id="pop_back-instance_method">
956
+
957
+ #<strong>pop_back</strong> &#x21d2; <tt>Object</tt>
958
+
959
+
960
+
961
+
962
+
963
+ </h3><div class="docstring">
964
+ <div class="discussion">
965
+
966
+ <p>Método que extrae el último elemento posterior de la lista</p>
967
+
968
+
969
+ </div>
970
+ </div>
971
+ <div class="tags">
972
+
973
+
974
+ </div><table class="source_code">
975
+ <tr>
976
+ <td>
977
+ <pre class="lines">
978
+
979
+
980
+ 69
981
+ 70
982
+ 71
983
+ 72
984
+ 73
985
+ 74
986
+ 75
987
+ 76
988
+ 77
989
+ 78</pre>
990
+ </td>
991
+ <td>
992
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 69</span>
993
+
994
+ <span class='kw'>def</span> <span class='id identifier rubyid_pop_back'>pop_back</span>
995
+ <span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='ivar'>@tail</span>
996
+ <span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
997
+ <span class='kw'>else</span>
998
+ <span class='kw'>if</span> <span class='ivar'>@tail</span>
999
+ <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span>
1000
+ <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='semicolon'>;</span>
1001
+ <span class='kw'>end</span>
1002
+ <span class='kw'>end</span>
1003
+ <span class='kw'>end</span></pre>
1004
+ </td>
1005
+ </tr>
1006
+ </table>
1007
+ </div>
1008
+
1009
+ <div class="method_details ">
1010
+ <h3 class="signature " id="pop_front-instance_method">
1011
+
1012
+ #<strong>pop_front</strong> &#x21d2; <tt>Object</tt>
1013
+
1014
+
1015
+
1016
+
1017
+
1018
+ </h3><div class="docstring">
1019
+ <div class="discussion">
1020
+
1021
+ <p>Método que extrae el primer elemento de la lista.</p>
1022
+
1023
+
1024
+ </div>
1025
+ </div>
1026
+ <div class="tags">
1027
+
1028
+
1029
+ </div><table class="source_code">
1030
+ <tr>
1031
+ <td>
1032
+ <pre class="lines">
1033
+
1034
+
1035
+ 82
1036
+ 83
1037
+ 84
1038
+ 85
1039
+ 86
1040
+ 87
1041
+ 88
1042
+ 89
1043
+ 90
1044
+ 91</pre>
1045
+ </td>
1046
+ <td>
1047
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 82</span>
1048
+
1049
+ <span class='kw'>def</span> <span class='id identifier rubyid_pop_front'>pop_front</span>
1050
+ <span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='ivar'>@tail</span>
1051
+ <span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
1052
+ <span class='kw'>else</span>
1053
+ <span class='kw'>if</span> <span class='ivar'>@head</span>
1054
+ <span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
1055
+ <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='semicolon'>;</span>
1056
+ <span class='kw'>end</span>
1057
+ <span class='kw'>end</span>
1058
+ <span class='kw'>end</span></pre>
1059
+ </td>
1060
+ </tr>
1061
+ </table>
1062
+ </div>
1063
+
1064
+ <div class="method_details ">
1065
+ <h3 class="signature " id="push_back-instance_method">
1066
+
1067
+ #<strong>push_back</strong>(value) &#x21d2; <tt>Object</tt>
1068
+
1069
+
1070
+
1071
+
1072
+
1073
+ </h3><div class="docstring">
1074
+ <div class="discussion">
1075
+
1076
+ <p>Método que inseta un valor por la parte posterior de la lista.</p>
1077
+
1078
+
1079
+ </div>
1080
+ </div>
1081
+ <div class="tags">
1082
+ <p class="tag_title">Parameters:</p>
1083
+ <ul class="param">
1084
+
1085
+ <li>
1086
+
1087
+ <span class='name'>value</span>
1088
+
1089
+
1090
+ <span class='type'>(<tt>value</tt>)</span>
1091
+
1092
+
1093
+
1094
+ &mdash;
1095
+ <div class='inline'>
1096
+ <p>Valor que queremos insertar.</p>
1097
+ </div>
1098
+
1099
+ </li>
1100
+
1101
+ </ul>
1102
+
1103
+
1104
+ </div><table class="source_code">
1105
+ <tr>
1106
+ <td>
1107
+ <pre class="lines">
1108
+
1109
+
1110
+ 31
1111
+ 32
1112
+ 33
1113
+ 34
1114
+ 35
1115
+ 36
1116
+ 37
1117
+ 38
1118
+ 39
1119
+ 40</pre>
1120
+ </td>
1121
+ <td>
1122
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 31</span>
1123
+
1124
+ <span class='kw'>def</span> <span class='id identifier rubyid_push_back'>push_back</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1125
+ <span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span>
1126
+ <span class='ivar'>@head</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="LinkedList/Node.html" title="NutritionalCalculator::LinkedList::Node (class)">Node</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="NutritionalCalculator::LinkedList#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1127
+ <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@head</span>
1128
+ <span class='kw'>else</span>
1129
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="LinkedList/Node.html" title="NutritionalCalculator::LinkedList::Node (class)">Node</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="NutritionalCalculator::LinkedList#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='ivar'>@tail</span><span class='rparen'>)</span>
1130
+ <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span>
1131
+ <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span>
1132
+ <span class='kw'>end</span>
1133
+ <span class='kw'>end</span></pre>
1134
+ </td>
1135
+ </tr>
1136
+ </table>
1137
+ </div>
1138
+
1139
+ <div class="method_details ">
1140
+ <h3 class="signature " id="push_front-instance_method">
1141
+
1142
+ #<strong>push_front</strong>(value) &#x21d2; <tt>Object</tt>
1143
+
1144
+
1145
+
1146
+
1147
+
1148
+ </h3><div class="docstring">
1149
+ <div class="discussion">
1150
+
1151
+ <p>Método que inseta un valor por la parte delantera de la lista.</p>
1152
+
1153
+
1154
+ </div>
1155
+ </div>
1156
+ <div class="tags">
1157
+ <p class="tag_title">Parameters:</p>
1158
+ <ul class="param">
1159
+
1160
+ <li>
1161
+
1162
+ <span class='name'>value</span>
1163
+
1164
+
1165
+ <span class='type'>(<tt>value</tt>)</span>
1166
+
1167
+
1168
+
1169
+ &mdash;
1170
+ <div class='inline'>
1171
+ <p>Valor que queremos insertar.</p>
1172
+ </div>
1173
+
1174
+ </li>
1175
+
1176
+ </ul>
1177
+
1178
+
1179
+ </div><table class="source_code">
1180
+ <tr>
1181
+ <td>
1182
+ <pre class="lines">
1183
+
1184
+
1185
+ 45
1186
+ 46
1187
+ 47
1188
+ 48
1189
+ 49
1190
+ 50
1191
+ 51
1192
+ 52
1193
+ 53
1194
+ 54</pre>
1195
+ </td>
1196
+ <td>
1197
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 45</span>
1198
+
1199
+ <span class='kw'>def</span> <span class='id identifier rubyid_push_front'>push_front</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1200
+ <span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span>
1201
+ <span class='ivar'>@head</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="LinkedList/Node.html" title="NutritionalCalculator::LinkedList::Node (class)">Node</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="NutritionalCalculator::LinkedList#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1202
+ <span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@head</span>
1203
+ <span class='kw'>else</span>
1204
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="LinkedList/Node.html" title="NutritionalCalculator::LinkedList::Node (class)">Node</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="NutritionalCalculator::LinkedList#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='ivar'>@head</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1205
+ <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span>
1206
+ <span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span>
1207
+ <span class='kw'>end</span>
1208
+ <span class='kw'>end</span></pre>
1209
+ </td>
1210
+ </tr>
1211
+ </table>
1212
+ </div>
1213
+
1214
+ <div class="method_details ">
1215
+ <h3 class="signature " id="to_s-instance_method">
1216
+
1217
+ #<strong>to_s</strong> &#x21d2; <tt>String</tt>
1218
+
1219
+
1220
+
1221
+
1222
+
1223
+ </h3><div class="docstring">
1224
+ <div class="discussion">
1225
+
1226
+ <p>Método que transforma el objeto en un String. De esta forma será formateado
1227
+ por pantalla.</p>
1228
+
1229
+
1230
+ </div>
1231
+ </div>
1232
+ <div class="tags">
1233
+
1234
+ <p class="tag_title">Returns:</p>
1235
+ <ul class="return">
1236
+
1237
+ <li>
1238
+
1239
+
1240
+ <span class='type'>(<tt>String</tt>)</span>
1241
+
1242
+
1243
+
1244
+ &mdash;
1245
+ <div class='inline'>
1246
+ <p>String con el objeto formateado.</p>
1247
+ </div>
1248
+
1249
+ </li>
1250
+
1251
+ </ul>
1252
+
1253
+ </div><table class="source_code">
1254
+ <tr>
1255
+ <td>
1256
+ <pre class="lines">
1257
+
1258
+
1259
+ 176
1260
+ 177
1261
+ 178
1262
+ 179
1263
+ 180
1264
+ 181
1265
+ 182
1266
+ 183
1267
+ 184
1268
+ 185
1269
+ 186
1270
+ 187
1271
+ 188
1272
+ 189
1273
+ 190
1274
+ 191</pre>
1275
+ </td>
1276
+ <td>
1277
+ <pre class="code"><span class="info file"># File 'lib/nutritional_calculator/linkedlist.rb', line 176</span>
1278
+
1279
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_s'>to_s</span>
1280
+ <span class='id identifier rubyid_list_as_string'>list_as_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span>
1281
+
1282
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='ivar'>@head</span>
1283
+ <span class='kw'>while</span> <span class='id identifier rubyid_current_node'>current_node</span>
1284
+ <span class='id identifier rubyid_list_as_string'>list_as_string</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1285
+
1286
+ <span class='kw'>if</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
1287
+ <span class='id identifier rubyid_list_as_string'>list_as_string</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> &lt;-- </span><span class='tstring_end'>&quot;</span></span>
1288
+ <span class='kw'>end</span>
1289
+
1290
+ <span class='id identifier rubyid_current_node'>current_node</span> <span class='op'>=</span> <span class='id identifier rubyid_current_node'>current_node</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
1291
+ <span class='kw'>end</span>
1292
+
1293
+ <span class='id identifier rubyid_list_as_string'>list_as_string</span>
1294
+ <span class='kw'>end</span></pre>
1295
+ </td>
1296
+ </tr>
1297
+ </table>
1298
+ </div>
1299
+
1300
+ </div>
1301
+
1302
+ </div>
1303
+
1304
+ <div id="footer">
1305
+ Generated on Tue Nov 14 20:38:37 2017 by
1306
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1307
+ 0.9.9 (ruby-2.3.1).
1308
+ </div>
1309
+
1310
+ </div>
1311
+ </body>
1312
+ </html>