nutrientes_AkaiBF 1.3.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.
- checksums.yaml +7 -0
- data/.coveralls.yml +1 -0
- data/.gitignore +12 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +6 -0
- data/Guardfile +82 -0
- data/LICENSE.txt +21 -0
- data/README.md +43 -0
- data/Rakefile +11 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/docs/Alimento.html +927 -0
- data/docs/Carbohidratado.html +301 -0
- data/docs/Carnido.html +301 -0
- data/docs/Fruta.html +301 -0
- data/docs/Graso.html +301 -0
- data/docs/List.html +1469 -0
- data/docs/Node.html +410 -0
- data/docs/Nutrientes.html +139 -0
- data/docs/OvoLacteo.html +301 -0
- data/docs/Pescado.html +301 -0
- data/docs/Verdura.html +301 -0
- data/docs/_index.html +224 -0
- data/docs/class_list.html +51 -0
- data/docs/css/common.css +1 -0
- data/docs/css/full_list.css +58 -0
- data/docs/css/style.css +492 -0
- data/docs/file.README.html +135 -0
- data/docs/file_list.html +56 -0
- data/docs/frames.html +17 -0
- data/docs/index.html +135 -0
- data/docs/js/app.js +248 -0
- data/docs/js/full_list.js +216 -0
- data/docs/js/jquery.js +4 -0
- data/docs/method_list.html +267 -0
- data/docs/top-level-namespace.html +112 -0
- data/lib/nutrientes.rb +8 -0
- data/lib/nutrientes/alimento.rb +165 -0
- data/lib/nutrientes/glucosa.rb +40 -0
- data/lib/nutrientes/harvard_dish.rb +94 -0
- data/lib/nutrientes/list.rb +109 -0
- data/lib/nutrientes/version.rb +4 -0
- data/nutrientes.gemspec +39 -0
- metadata +187 -0
data/docs/List.html
ADDED
|
@@ -0,0 +1,1469 @@
|
|
|
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: List
|
|
8
|
+
|
|
9
|
+
— 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 = "List";
|
|
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> »
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
<span class="title">List</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: List
|
|
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">List</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/nutrientes/list.rb</dd>
|
|
103
|
+
</dl>
|
|
104
|
+
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
<h2>Overview</h2><div class="docstring">
|
|
108
|
+
<div class="discussion">
|
|
109
|
+
|
|
110
|
+
<p>Class List Defines the list</p>
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
<div class="tags">
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
</div>
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
|
|
123
|
+
<ul class="summary">
|
|
124
|
+
|
|
125
|
+
<li class="public ">
|
|
126
|
+
<span class="summary_signature">
|
|
127
|
+
|
|
128
|
+
<a href="#head-instance_method" title="#head (instance method)">#<strong>head</strong> ⇒ Object </a>
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
</span>
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
<span class="note title readonly">readonly</span>
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
<span class="summary_desc"><div class='inline'>
|
|
148
|
+
<p>The first element of the list.</p>
|
|
149
|
+
</div></span>
|
|
150
|
+
|
|
151
|
+
</li>
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
<li class="public ">
|
|
155
|
+
<span class="summary_signature">
|
|
156
|
+
|
|
157
|
+
<a href="#size-instance_method" title="#size (instance method)">#<strong>size</strong> ⇒ Fixnum </a>
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
</span>
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
<span class="note title readonly">readonly</span>
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
<span class="summary_desc"><div class='inline'>
|
|
177
|
+
<p>Size of the list.</p>
|
|
178
|
+
</div></span>
|
|
179
|
+
|
|
180
|
+
</li>
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
<li class="public ">
|
|
184
|
+
<span class="summary_signature">
|
|
185
|
+
|
|
186
|
+
<a href="#tail-instance_method" title="#tail (instance method)">#<strong>tail</strong> ⇒ Object </a>
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
</span>
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
<span class="note title readonly">readonly</span>
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
<span class="summary_desc"><div class='inline'>
|
|
206
|
+
<p>The last element of the list.</p>
|
|
207
|
+
</div></span>
|
|
208
|
+
|
|
209
|
+
</li>
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
</ul>
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
<h2>
|
|
219
|
+
Instance Method Summary
|
|
220
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
|
221
|
+
</h2>
|
|
222
|
+
|
|
223
|
+
<ul class="summary">
|
|
224
|
+
|
|
225
|
+
<li class="public ">
|
|
226
|
+
<span class="summary_signature">
|
|
227
|
+
|
|
228
|
+
<a href="#each-instance_method" title="#each (instance method)">#<strong>each</strong> ⇒ Object </a>
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
</span>
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
<span class="summary_desc"><div class='inline'>
|
|
243
|
+
<p>Defines the each method to make use of the Enumerable module.</p>
|
|
244
|
+
</div></span>
|
|
245
|
+
|
|
246
|
+
</li>
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
<li class="public ">
|
|
250
|
+
<span class="summary_signature">
|
|
251
|
+
|
|
252
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong> ⇒ List </a>
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
</span>
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
<span class="note title constructor">constructor</span>
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
<span class="summary_desc"><div class='inline'>
|
|
269
|
+
<p>Initialization of the list.</p>
|
|
270
|
+
</div></span>
|
|
271
|
+
|
|
272
|
+
</li>
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
<li class="public ">
|
|
276
|
+
<span class="summary_signature">
|
|
277
|
+
|
|
278
|
+
<a href="#insert-instance_method" title="#insert (instance method)">#<strong>insert</strong>(nodo) ⇒ Object </a>
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
</span>
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
<span class="summary_desc"><div class='inline'>
|
|
293
|
+
<p>Inserts a node at the end of the list.</p>
|
|
294
|
+
</div></span>
|
|
295
|
+
|
|
296
|
+
</li>
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
<li class="public ">
|
|
300
|
+
<span class="summary_signature">
|
|
301
|
+
|
|
302
|
+
<a href="#pop-instance_method" title="#pop (instance method)">#<strong>pop</strong> ⇒ Object </a>
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
</span>
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
<span class="summary_desc"><div class='inline'>
|
|
317
|
+
<p>Deletes a node from the end of the list.</p>
|
|
318
|
+
</div></span>
|
|
319
|
+
|
|
320
|
+
</li>
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
<li class="public ">
|
|
324
|
+
<span class="summary_signature">
|
|
325
|
+
|
|
326
|
+
<a href="#push-instance_method" title="#push (instance method)">#<strong>push</strong>(nodo) ⇒ Object </a>
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
</span>
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
<span class="summary_desc"><div class='inline'>
|
|
341
|
+
<p>Inserts a node at the beginning of the list.</p>
|
|
342
|
+
</div></span>
|
|
343
|
+
|
|
344
|
+
</li>
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
<li class="public ">
|
|
348
|
+
<span class="summary_signature">
|
|
349
|
+
|
|
350
|
+
<a href="#truncate-instance_method" title="#truncate (instance method)">#<strong>truncate</strong> ⇒ Object </a>
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
</span>
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
<span class="summary_desc"><div class='inline'>
|
|
365
|
+
<p>Deletes a node from the beginning of the list.</p>
|
|
366
|
+
</div></span>
|
|
367
|
+
|
|
368
|
+
</li>
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
</ul>
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
<div id="constructor_details" class="method_details_list">
|
|
376
|
+
<h2>Constructor Details</h2>
|
|
377
|
+
|
|
378
|
+
<div class="method_details first">
|
|
379
|
+
<h3 class="signature first" id="initialize-instance_method">
|
|
380
|
+
|
|
381
|
+
#<strong>initialize</strong> ⇒ <tt><span class='object_link'><a href="" title="List (class)">List</a></span></tt>
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
</h3><div class="docstring">
|
|
388
|
+
<div class="discussion">
|
|
389
|
+
|
|
390
|
+
<p>Initialization of the list</p>
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
</div>
|
|
394
|
+
</div>
|
|
395
|
+
<div class="tags">
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
</div><table class="source_code">
|
|
399
|
+
<tr>
|
|
400
|
+
<td>
|
|
401
|
+
<pre class="lines">
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
36
|
|
405
|
+
37
|
|
406
|
+
38
|
|
407
|
+
39
|
|
408
|
+
40</pre>
|
|
409
|
+
</td>
|
|
410
|
+
<td>
|
|
411
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 36</span>
|
|
412
|
+
|
|
413
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='rparen'>)</span>
|
|
414
|
+
<span class='ivar'>@size</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
415
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
416
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
417
|
+
<span class='kw'>end</span></pre>
|
|
418
|
+
</td>
|
|
419
|
+
</tr>
|
|
420
|
+
</table>
|
|
421
|
+
</div>
|
|
422
|
+
|
|
423
|
+
</div>
|
|
424
|
+
|
|
425
|
+
<div id="instance_attr_details" class="attr_details">
|
|
426
|
+
<h2>Instance Attribute Details</h2>
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
<span id=""></span>
|
|
430
|
+
<div class="method_details first">
|
|
431
|
+
<h3 class="signature first" id="head-instance_method">
|
|
432
|
+
|
|
433
|
+
#<strong>head</strong> ⇒ <tt>Object</tt> <span class="extras">(readonly)</span>
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
|
|
438
|
+
|
|
439
|
+
</h3><div class="docstring">
|
|
440
|
+
<div class="discussion">
|
|
441
|
+
|
|
442
|
+
<p>Returns The first element of the list</p>
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
</div>
|
|
446
|
+
</div>
|
|
447
|
+
<div class="tags">
|
|
448
|
+
|
|
449
|
+
<p class="tag_title">Returns:</p>
|
|
450
|
+
<ul class="return">
|
|
451
|
+
|
|
452
|
+
<li>
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
|
|
459
|
+
—
|
|
460
|
+
<div class='inline'>
|
|
461
|
+
<p>The first element of the list</p>
|
|
462
|
+
</div>
|
|
463
|
+
|
|
464
|
+
</li>
|
|
465
|
+
|
|
466
|
+
</ul>
|
|
467
|
+
|
|
468
|
+
</div><table class="source_code">
|
|
469
|
+
<tr>
|
|
470
|
+
<td>
|
|
471
|
+
<pre class="lines">
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
31
|
|
475
|
+
32
|
|
476
|
+
33
|
|
477
|
+
34
|
|
478
|
+
35
|
|
479
|
+
36
|
|
480
|
+
37
|
|
481
|
+
38
|
|
482
|
+
39
|
|
483
|
+
40
|
|
484
|
+
41
|
|
485
|
+
42
|
|
486
|
+
43
|
|
487
|
+
44
|
|
488
|
+
45
|
|
489
|
+
46
|
|
490
|
+
47
|
|
491
|
+
48
|
|
492
|
+
49
|
|
493
|
+
50
|
|
494
|
+
51
|
|
495
|
+
52
|
|
496
|
+
53
|
|
497
|
+
54
|
|
498
|
+
55
|
|
499
|
+
56
|
|
500
|
+
57
|
|
501
|
+
58
|
|
502
|
+
59
|
|
503
|
+
60
|
|
504
|
+
61
|
|
505
|
+
62
|
|
506
|
+
63
|
|
507
|
+
64
|
|
508
|
+
65
|
|
509
|
+
66
|
|
510
|
+
67
|
|
511
|
+
68
|
|
512
|
+
69
|
|
513
|
+
70
|
|
514
|
+
71
|
|
515
|
+
72
|
|
516
|
+
73
|
|
517
|
+
74
|
|
518
|
+
75
|
|
519
|
+
76
|
|
520
|
+
77
|
|
521
|
+
78
|
|
522
|
+
79
|
|
523
|
+
80
|
|
524
|
+
81
|
|
525
|
+
82
|
|
526
|
+
83
|
|
527
|
+
84
|
|
528
|
+
85
|
|
529
|
+
86
|
|
530
|
+
87
|
|
531
|
+
88
|
|
532
|
+
89
|
|
533
|
+
90
|
|
534
|
+
91
|
|
535
|
+
92
|
|
536
|
+
93
|
|
537
|
+
94
|
|
538
|
+
95
|
|
539
|
+
96
|
|
540
|
+
97
|
|
541
|
+
98
|
|
542
|
+
99
|
|
543
|
+
100
|
|
544
|
+
101
|
|
545
|
+
102
|
|
546
|
+
103
|
|
547
|
+
104
|
|
548
|
+
105
|
|
549
|
+
106
|
|
550
|
+
107
|
|
551
|
+
108</pre>
|
|
552
|
+
</td>
|
|
553
|
+
<td>
|
|
554
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 31</span>
|
|
555
|
+
|
|
556
|
+
<span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="List (class)">List</a></span></span>
|
|
557
|
+
<span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:head</span><span class='comma'>,</span> <span class='symbol'>:tail</span><span class='comma'>,</span> <span class='symbol'>:size</span>
|
|
558
|
+
<span class='id identifier rubyid_include'>include</span> <span class='const'>Enumerable</span>
|
|
559
|
+
|
|
560
|
+
<span class='comment'># Initialization of the list
|
|
561
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='rparen'>)</span>
|
|
562
|
+
<span class='ivar'>@size</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
563
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
564
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
565
|
+
<span class='kw'>end</span>
|
|
566
|
+
|
|
567
|
+
<span class='comment'># Defines the each method to make use of the Enumerable module
|
|
568
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span>
|
|
569
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
570
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_actual'>actual</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='kw'>do</span>
|
|
571
|
+
<span class='kw'>yield</span> <span class='id identifier rubyid_actual'>actual</span>
|
|
572
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='id identifier rubyid_actual'>actual</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
573
|
+
<span class='kw'>end</span>
|
|
574
|
+
<span class='kw'>end</span>
|
|
575
|
+
|
|
576
|
+
<span class='comment'># Inserts a node at the beginning of the list
|
|
577
|
+
</span> <span class='comment'># @param [Object] nodo node to insert
|
|
578
|
+
</span> <span class='comment'># @return nil
|
|
579
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_push'>push</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
580
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
581
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
582
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
583
|
+
<span class='kw'>else</span>
|
|
584
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
585
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
|
586
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
587
|
+
<span class='kw'>end</span>
|
|
588
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
589
|
+
<span class='kw'>end</span>
|
|
590
|
+
|
|
591
|
+
<span class='comment'># Inserts a node at the end of the list
|
|
592
|
+
</span> <span class='comment'># @param nodo [Object] node to insert
|
|
593
|
+
</span> <span class='comment'># @return nil
|
|
594
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
595
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
596
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
597
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
598
|
+
<span class='kw'>else</span>
|
|
599
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
600
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
601
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
602
|
+
<span class='kw'>end</span>
|
|
603
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
604
|
+
<span class='kw'>end</span>
|
|
605
|
+
|
|
606
|
+
<span class='comment'># Deletes a node from the beginning of the list
|
|
607
|
+
</span> <span class='comment'># @return nil
|
|
608
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_truncate'>truncate</span>
|
|
609
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
610
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
611
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
612
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
613
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
614
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
615
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
616
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
617
|
+
<span class='kw'>end</span>
|
|
618
|
+
<span class='kw'>end</span>
|
|
619
|
+
|
|
620
|
+
<span class='comment'># Deletes a node from the end of the list
|
|
621
|
+
</span> <span class='comment'># @return nil
|
|
622
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_pop'>pop</span>
|
|
623
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
624
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span>
|
|
625
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
626
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
627
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
628
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
629
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
630
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
631
|
+
<span class='kw'>end</span>
|
|
632
|
+
<span class='kw'>end</span>
|
|
633
|
+
<span class='kw'>end</span></pre>
|
|
634
|
+
</td>
|
|
635
|
+
</tr>
|
|
636
|
+
</table>
|
|
637
|
+
</div>
|
|
638
|
+
|
|
639
|
+
|
|
640
|
+
<span id=""></span>
|
|
641
|
+
<div class="method_details ">
|
|
642
|
+
<h3 class="signature " id="size-instance_method">
|
|
643
|
+
|
|
644
|
+
#<strong>size</strong> ⇒ <tt>Fixnum</tt> <span class="extras">(readonly)</span>
|
|
645
|
+
|
|
646
|
+
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
</h3><div class="docstring">
|
|
651
|
+
<div class="discussion">
|
|
652
|
+
|
|
653
|
+
<p>Returns Size of the list</p>
|
|
654
|
+
|
|
655
|
+
|
|
656
|
+
</div>
|
|
657
|
+
</div>
|
|
658
|
+
<div class="tags">
|
|
659
|
+
|
|
660
|
+
<p class="tag_title">Returns:</p>
|
|
661
|
+
<ul class="return">
|
|
662
|
+
|
|
663
|
+
<li>
|
|
664
|
+
|
|
665
|
+
|
|
666
|
+
<span class='type'>(<tt>Fixnum</tt>)</span>
|
|
667
|
+
|
|
668
|
+
|
|
669
|
+
|
|
670
|
+
—
|
|
671
|
+
<div class='inline'>
|
|
672
|
+
<p>Size of the list</p>
|
|
673
|
+
</div>
|
|
674
|
+
|
|
675
|
+
</li>
|
|
676
|
+
|
|
677
|
+
</ul>
|
|
678
|
+
|
|
679
|
+
</div><table class="source_code">
|
|
680
|
+
<tr>
|
|
681
|
+
<td>
|
|
682
|
+
<pre class="lines">
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
31
|
|
686
|
+
32
|
|
687
|
+
33
|
|
688
|
+
34
|
|
689
|
+
35
|
|
690
|
+
36
|
|
691
|
+
37
|
|
692
|
+
38
|
|
693
|
+
39
|
|
694
|
+
40
|
|
695
|
+
41
|
|
696
|
+
42
|
|
697
|
+
43
|
|
698
|
+
44
|
|
699
|
+
45
|
|
700
|
+
46
|
|
701
|
+
47
|
|
702
|
+
48
|
|
703
|
+
49
|
|
704
|
+
50
|
|
705
|
+
51
|
|
706
|
+
52
|
|
707
|
+
53
|
|
708
|
+
54
|
|
709
|
+
55
|
|
710
|
+
56
|
|
711
|
+
57
|
|
712
|
+
58
|
|
713
|
+
59
|
|
714
|
+
60
|
|
715
|
+
61
|
|
716
|
+
62
|
|
717
|
+
63
|
|
718
|
+
64
|
|
719
|
+
65
|
|
720
|
+
66
|
|
721
|
+
67
|
|
722
|
+
68
|
|
723
|
+
69
|
|
724
|
+
70
|
|
725
|
+
71
|
|
726
|
+
72
|
|
727
|
+
73
|
|
728
|
+
74
|
|
729
|
+
75
|
|
730
|
+
76
|
|
731
|
+
77
|
|
732
|
+
78
|
|
733
|
+
79
|
|
734
|
+
80
|
|
735
|
+
81
|
|
736
|
+
82
|
|
737
|
+
83
|
|
738
|
+
84
|
|
739
|
+
85
|
|
740
|
+
86
|
|
741
|
+
87
|
|
742
|
+
88
|
|
743
|
+
89
|
|
744
|
+
90
|
|
745
|
+
91
|
|
746
|
+
92
|
|
747
|
+
93
|
|
748
|
+
94
|
|
749
|
+
95
|
|
750
|
+
96
|
|
751
|
+
97
|
|
752
|
+
98
|
|
753
|
+
99
|
|
754
|
+
100
|
|
755
|
+
101
|
|
756
|
+
102
|
|
757
|
+
103
|
|
758
|
+
104
|
|
759
|
+
105
|
|
760
|
+
106
|
|
761
|
+
107
|
|
762
|
+
108</pre>
|
|
763
|
+
</td>
|
|
764
|
+
<td>
|
|
765
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 31</span>
|
|
766
|
+
|
|
767
|
+
<span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="List (class)">List</a></span></span>
|
|
768
|
+
<span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:head</span><span class='comma'>,</span> <span class='symbol'>:tail</span><span class='comma'>,</span> <span class='symbol'>:size</span>
|
|
769
|
+
<span class='id identifier rubyid_include'>include</span> <span class='const'>Enumerable</span>
|
|
770
|
+
|
|
771
|
+
<span class='comment'># Initialization of the list
|
|
772
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='rparen'>)</span>
|
|
773
|
+
<span class='ivar'>@size</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
774
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
775
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
776
|
+
<span class='kw'>end</span>
|
|
777
|
+
|
|
778
|
+
<span class='comment'># Defines the each method to make use of the Enumerable module
|
|
779
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span>
|
|
780
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
781
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_actual'>actual</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='kw'>do</span>
|
|
782
|
+
<span class='kw'>yield</span> <span class='id identifier rubyid_actual'>actual</span>
|
|
783
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='id identifier rubyid_actual'>actual</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
784
|
+
<span class='kw'>end</span>
|
|
785
|
+
<span class='kw'>end</span>
|
|
786
|
+
|
|
787
|
+
<span class='comment'># Inserts a node at the beginning of the list
|
|
788
|
+
</span> <span class='comment'># @param [Object] nodo node to insert
|
|
789
|
+
</span> <span class='comment'># @return nil
|
|
790
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_push'>push</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
791
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
792
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
793
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
794
|
+
<span class='kw'>else</span>
|
|
795
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
796
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
|
797
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
798
|
+
<span class='kw'>end</span>
|
|
799
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
800
|
+
<span class='kw'>end</span>
|
|
801
|
+
|
|
802
|
+
<span class='comment'># Inserts a node at the end of the list
|
|
803
|
+
</span> <span class='comment'># @param nodo [Object] node to insert
|
|
804
|
+
</span> <span class='comment'># @return nil
|
|
805
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
806
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
807
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
808
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
809
|
+
<span class='kw'>else</span>
|
|
810
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
811
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
812
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
813
|
+
<span class='kw'>end</span>
|
|
814
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
815
|
+
<span class='kw'>end</span>
|
|
816
|
+
|
|
817
|
+
<span class='comment'># Deletes a node from the beginning of the list
|
|
818
|
+
</span> <span class='comment'># @return nil
|
|
819
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_truncate'>truncate</span>
|
|
820
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
821
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
822
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
823
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
824
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
825
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
826
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
827
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
828
|
+
<span class='kw'>end</span>
|
|
829
|
+
<span class='kw'>end</span>
|
|
830
|
+
|
|
831
|
+
<span class='comment'># Deletes a node from the end of the list
|
|
832
|
+
</span> <span class='comment'># @return nil
|
|
833
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_pop'>pop</span>
|
|
834
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
835
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span>
|
|
836
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
837
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
838
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
839
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
840
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
841
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
842
|
+
<span class='kw'>end</span>
|
|
843
|
+
<span class='kw'>end</span>
|
|
844
|
+
<span class='kw'>end</span></pre>
|
|
845
|
+
</td>
|
|
846
|
+
</tr>
|
|
847
|
+
</table>
|
|
848
|
+
</div>
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
<span id=""></span>
|
|
852
|
+
<div class="method_details ">
|
|
853
|
+
<h3 class="signature " id="tail-instance_method">
|
|
854
|
+
|
|
855
|
+
#<strong>tail</strong> ⇒ <tt>Object</tt> <span class="extras">(readonly)</span>
|
|
856
|
+
|
|
857
|
+
|
|
858
|
+
|
|
859
|
+
|
|
860
|
+
|
|
861
|
+
</h3><div class="docstring">
|
|
862
|
+
<div class="discussion">
|
|
863
|
+
|
|
864
|
+
<p>Returns The last element of the list</p>
|
|
865
|
+
|
|
866
|
+
|
|
867
|
+
</div>
|
|
868
|
+
</div>
|
|
869
|
+
<div class="tags">
|
|
870
|
+
|
|
871
|
+
<p class="tag_title">Returns:</p>
|
|
872
|
+
<ul class="return">
|
|
873
|
+
|
|
874
|
+
<li>
|
|
875
|
+
|
|
876
|
+
|
|
877
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
|
|
881
|
+
—
|
|
882
|
+
<div class='inline'>
|
|
883
|
+
<p>The last element of the list</p>
|
|
884
|
+
</div>
|
|
885
|
+
|
|
886
|
+
</li>
|
|
887
|
+
|
|
888
|
+
</ul>
|
|
889
|
+
|
|
890
|
+
</div><table class="source_code">
|
|
891
|
+
<tr>
|
|
892
|
+
<td>
|
|
893
|
+
<pre class="lines">
|
|
894
|
+
|
|
895
|
+
|
|
896
|
+
31
|
|
897
|
+
32
|
|
898
|
+
33
|
|
899
|
+
34
|
|
900
|
+
35
|
|
901
|
+
36
|
|
902
|
+
37
|
|
903
|
+
38
|
|
904
|
+
39
|
|
905
|
+
40
|
|
906
|
+
41
|
|
907
|
+
42
|
|
908
|
+
43
|
|
909
|
+
44
|
|
910
|
+
45
|
|
911
|
+
46
|
|
912
|
+
47
|
|
913
|
+
48
|
|
914
|
+
49
|
|
915
|
+
50
|
|
916
|
+
51
|
|
917
|
+
52
|
|
918
|
+
53
|
|
919
|
+
54
|
|
920
|
+
55
|
|
921
|
+
56
|
|
922
|
+
57
|
|
923
|
+
58
|
|
924
|
+
59
|
|
925
|
+
60
|
|
926
|
+
61
|
|
927
|
+
62
|
|
928
|
+
63
|
|
929
|
+
64
|
|
930
|
+
65
|
|
931
|
+
66
|
|
932
|
+
67
|
|
933
|
+
68
|
|
934
|
+
69
|
|
935
|
+
70
|
|
936
|
+
71
|
|
937
|
+
72
|
|
938
|
+
73
|
|
939
|
+
74
|
|
940
|
+
75
|
|
941
|
+
76
|
|
942
|
+
77
|
|
943
|
+
78
|
|
944
|
+
79
|
|
945
|
+
80
|
|
946
|
+
81
|
|
947
|
+
82
|
|
948
|
+
83
|
|
949
|
+
84
|
|
950
|
+
85
|
|
951
|
+
86
|
|
952
|
+
87
|
|
953
|
+
88
|
|
954
|
+
89
|
|
955
|
+
90
|
|
956
|
+
91
|
|
957
|
+
92
|
|
958
|
+
93
|
|
959
|
+
94
|
|
960
|
+
95
|
|
961
|
+
96
|
|
962
|
+
97
|
|
963
|
+
98
|
|
964
|
+
99
|
|
965
|
+
100
|
|
966
|
+
101
|
|
967
|
+
102
|
|
968
|
+
103
|
|
969
|
+
104
|
|
970
|
+
105
|
|
971
|
+
106
|
|
972
|
+
107
|
|
973
|
+
108</pre>
|
|
974
|
+
</td>
|
|
975
|
+
<td>
|
|
976
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 31</span>
|
|
977
|
+
|
|
978
|
+
<span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="List (class)">List</a></span></span>
|
|
979
|
+
<span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:head</span><span class='comma'>,</span> <span class='symbol'>:tail</span><span class='comma'>,</span> <span class='symbol'>:size</span>
|
|
980
|
+
<span class='id identifier rubyid_include'>include</span> <span class='const'>Enumerable</span>
|
|
981
|
+
|
|
982
|
+
<span class='comment'># Initialization of the list
|
|
983
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='rparen'>)</span>
|
|
984
|
+
<span class='ivar'>@size</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
985
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
986
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
987
|
+
<span class='kw'>end</span>
|
|
988
|
+
|
|
989
|
+
<span class='comment'># Defines the each method to make use of the Enumerable module
|
|
990
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span>
|
|
991
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
992
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_actual'>actual</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='kw'>do</span>
|
|
993
|
+
<span class='kw'>yield</span> <span class='id identifier rubyid_actual'>actual</span>
|
|
994
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='id identifier rubyid_actual'>actual</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
995
|
+
<span class='kw'>end</span>
|
|
996
|
+
<span class='kw'>end</span>
|
|
997
|
+
|
|
998
|
+
<span class='comment'># Inserts a node at the beginning of the list
|
|
999
|
+
</span> <span class='comment'># @param [Object] nodo node to insert
|
|
1000
|
+
</span> <span class='comment'># @return nil
|
|
1001
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_push'>push</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
1002
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
1003
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1004
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1005
|
+
<span class='kw'>else</span>
|
|
1006
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1007
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
|
1008
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1009
|
+
<span class='kw'>end</span>
|
|
1010
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
1011
|
+
<span class='kw'>end</span>
|
|
1012
|
+
|
|
1013
|
+
<span class='comment'># Inserts a node at the end of the list
|
|
1014
|
+
</span> <span class='comment'># @param nodo [Object] node to insert
|
|
1015
|
+
</span> <span class='comment'># @return nil
|
|
1016
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
1017
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
1018
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1019
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1020
|
+
<span class='kw'>else</span>
|
|
1021
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1022
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
1023
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1024
|
+
<span class='kw'>end</span>
|
|
1025
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
1026
|
+
<span class='kw'>end</span>
|
|
1027
|
+
|
|
1028
|
+
<span class='comment'># Deletes a node from the beginning of the list
|
|
1029
|
+
</span> <span class='comment'># @return nil
|
|
1030
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_truncate'>truncate</span>
|
|
1031
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
1032
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
1033
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1034
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1035
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
1036
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1037
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1038
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1039
|
+
<span class='kw'>end</span>
|
|
1040
|
+
<span class='kw'>end</span>
|
|
1041
|
+
|
|
1042
|
+
<span class='comment'># Deletes a node from the end of the list
|
|
1043
|
+
</span> <span class='comment'># @return nil
|
|
1044
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_pop'>pop</span>
|
|
1045
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
1046
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span>
|
|
1047
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1048
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1049
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
1050
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1051
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1052
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1053
|
+
<span class='kw'>end</span>
|
|
1054
|
+
<span class='kw'>end</span>
|
|
1055
|
+
<span class='kw'>end</span></pre>
|
|
1056
|
+
</td>
|
|
1057
|
+
</tr>
|
|
1058
|
+
</table>
|
|
1059
|
+
</div>
|
|
1060
|
+
|
|
1061
|
+
</div>
|
|
1062
|
+
|
|
1063
|
+
|
|
1064
|
+
<div id="instance_method_details" class="method_details_list">
|
|
1065
|
+
<h2>Instance Method Details</h2>
|
|
1066
|
+
|
|
1067
|
+
|
|
1068
|
+
<div class="method_details first">
|
|
1069
|
+
<h3 class="signature first" id="each-instance_method">
|
|
1070
|
+
|
|
1071
|
+
#<strong>each</strong> ⇒ <tt>Object</tt>
|
|
1072
|
+
|
|
1073
|
+
|
|
1074
|
+
|
|
1075
|
+
|
|
1076
|
+
|
|
1077
|
+
</h3><div class="docstring">
|
|
1078
|
+
<div class="discussion">
|
|
1079
|
+
|
|
1080
|
+
<p>Defines the each method to make use of the Enumerable module</p>
|
|
1081
|
+
|
|
1082
|
+
|
|
1083
|
+
</div>
|
|
1084
|
+
</div>
|
|
1085
|
+
<div class="tags">
|
|
1086
|
+
|
|
1087
|
+
|
|
1088
|
+
</div><table class="source_code">
|
|
1089
|
+
<tr>
|
|
1090
|
+
<td>
|
|
1091
|
+
<pre class="lines">
|
|
1092
|
+
|
|
1093
|
+
|
|
1094
|
+
43
|
|
1095
|
+
44
|
|
1096
|
+
45
|
|
1097
|
+
46
|
|
1098
|
+
47
|
|
1099
|
+
48
|
|
1100
|
+
49</pre>
|
|
1101
|
+
</td>
|
|
1102
|
+
<td>
|
|
1103
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 43</span>
|
|
1104
|
+
|
|
1105
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span>
|
|
1106
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
1107
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_actual'>actual</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='kw'>do</span>
|
|
1108
|
+
<span class='kw'>yield</span> <span class='id identifier rubyid_actual'>actual</span>
|
|
1109
|
+
<span class='id identifier rubyid_actual'>actual</span> <span class='op'>=</span> <span class='id identifier rubyid_actual'>actual</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
1110
|
+
<span class='kw'>end</span>
|
|
1111
|
+
<span class='kw'>end</span></pre>
|
|
1112
|
+
</td>
|
|
1113
|
+
</tr>
|
|
1114
|
+
</table>
|
|
1115
|
+
</div>
|
|
1116
|
+
|
|
1117
|
+
<div class="method_details ">
|
|
1118
|
+
<h3 class="signature " id="insert-instance_method">
|
|
1119
|
+
|
|
1120
|
+
#<strong>insert</strong>(nodo) ⇒ <tt>Object</tt>
|
|
1121
|
+
|
|
1122
|
+
|
|
1123
|
+
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
</h3><div class="docstring">
|
|
1127
|
+
<div class="discussion">
|
|
1128
|
+
|
|
1129
|
+
<p>Inserts a node at the end of the list</p>
|
|
1130
|
+
|
|
1131
|
+
|
|
1132
|
+
</div>
|
|
1133
|
+
</div>
|
|
1134
|
+
<div class="tags">
|
|
1135
|
+
<p class="tag_title">Parameters:</p>
|
|
1136
|
+
<ul class="param">
|
|
1137
|
+
|
|
1138
|
+
<li>
|
|
1139
|
+
|
|
1140
|
+
<span class='name'>nodo</span>
|
|
1141
|
+
|
|
1142
|
+
|
|
1143
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
1144
|
+
|
|
1145
|
+
|
|
1146
|
+
|
|
1147
|
+
—
|
|
1148
|
+
<div class='inline'>
|
|
1149
|
+
<p>node to insert</p>
|
|
1150
|
+
</div>
|
|
1151
|
+
|
|
1152
|
+
</li>
|
|
1153
|
+
|
|
1154
|
+
</ul>
|
|
1155
|
+
|
|
1156
|
+
<p class="tag_title">Returns:</p>
|
|
1157
|
+
<ul class="return">
|
|
1158
|
+
|
|
1159
|
+
<li>
|
|
1160
|
+
|
|
1161
|
+
|
|
1162
|
+
<span class='type'></span>
|
|
1163
|
+
|
|
1164
|
+
|
|
1165
|
+
|
|
1166
|
+
|
|
1167
|
+
<div class='inline'>
|
|
1168
|
+
<p>nil</p>
|
|
1169
|
+
</div>
|
|
1170
|
+
|
|
1171
|
+
</li>
|
|
1172
|
+
|
|
1173
|
+
</ul>
|
|
1174
|
+
|
|
1175
|
+
</div><table class="source_code">
|
|
1176
|
+
<tr>
|
|
1177
|
+
<td>
|
|
1178
|
+
<pre class="lines">
|
|
1179
|
+
|
|
1180
|
+
|
|
1181
|
+
69
|
|
1182
|
+
70
|
|
1183
|
+
71
|
|
1184
|
+
72
|
|
1185
|
+
73
|
|
1186
|
+
74
|
|
1187
|
+
75
|
|
1188
|
+
76
|
|
1189
|
+
77
|
|
1190
|
+
78
|
|
1191
|
+
79</pre>
|
|
1192
|
+
</td>
|
|
1193
|
+
<td>
|
|
1194
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 69</span>
|
|
1195
|
+
|
|
1196
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_insert'>insert</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
1197
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
1198
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1199
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1200
|
+
<span class='kw'>else</span>
|
|
1201
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1202
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
|
1203
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1204
|
+
<span class='kw'>end</span>
|
|
1205
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
1206
|
+
<span class='kw'>end</span></pre>
|
|
1207
|
+
</td>
|
|
1208
|
+
</tr>
|
|
1209
|
+
</table>
|
|
1210
|
+
</div>
|
|
1211
|
+
|
|
1212
|
+
<div class="method_details ">
|
|
1213
|
+
<h3 class="signature " id="pop-instance_method">
|
|
1214
|
+
|
|
1215
|
+
#<strong>pop</strong> ⇒ <tt>Object</tt>
|
|
1216
|
+
|
|
1217
|
+
|
|
1218
|
+
|
|
1219
|
+
|
|
1220
|
+
|
|
1221
|
+
</h3><div class="docstring">
|
|
1222
|
+
<div class="discussion">
|
|
1223
|
+
|
|
1224
|
+
<p>Deletes a node from the end of the list</p>
|
|
1225
|
+
|
|
1226
|
+
|
|
1227
|
+
</div>
|
|
1228
|
+
</div>
|
|
1229
|
+
<div class="tags">
|
|
1230
|
+
|
|
1231
|
+
<p class="tag_title">Returns:</p>
|
|
1232
|
+
<ul class="return">
|
|
1233
|
+
|
|
1234
|
+
<li>
|
|
1235
|
+
|
|
1236
|
+
|
|
1237
|
+
<span class='type'></span>
|
|
1238
|
+
|
|
1239
|
+
|
|
1240
|
+
|
|
1241
|
+
|
|
1242
|
+
<div class='inline'>
|
|
1243
|
+
<p>nil</p>
|
|
1244
|
+
</div>
|
|
1245
|
+
|
|
1246
|
+
</li>
|
|
1247
|
+
|
|
1248
|
+
</ul>
|
|
1249
|
+
|
|
1250
|
+
</div><table class="source_code">
|
|
1251
|
+
<tr>
|
|
1252
|
+
<td>
|
|
1253
|
+
<pre class="lines">
|
|
1254
|
+
|
|
1255
|
+
|
|
1256
|
+
97
|
|
1257
|
+
98
|
|
1258
|
+
99
|
|
1259
|
+
100
|
|
1260
|
+
101
|
|
1261
|
+
102
|
|
1262
|
+
103
|
|
1263
|
+
104
|
|
1264
|
+
105
|
|
1265
|
+
106
|
|
1266
|
+
107</pre>
|
|
1267
|
+
</td>
|
|
1268
|
+
<td>
|
|
1269
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 97</span>
|
|
1270
|
+
|
|
1271
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_pop'>pop</span>
|
|
1272
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
1273
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span>
|
|
1274
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1275
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1276
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
1277
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1278
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1279
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1280
|
+
<span class='kw'>end</span>
|
|
1281
|
+
<span class='kw'>end</span></pre>
|
|
1282
|
+
</td>
|
|
1283
|
+
</tr>
|
|
1284
|
+
</table>
|
|
1285
|
+
</div>
|
|
1286
|
+
|
|
1287
|
+
<div class="method_details ">
|
|
1288
|
+
<h3 class="signature " id="push-instance_method">
|
|
1289
|
+
|
|
1290
|
+
#<strong>push</strong>(nodo) ⇒ <tt>Object</tt>
|
|
1291
|
+
|
|
1292
|
+
|
|
1293
|
+
|
|
1294
|
+
|
|
1295
|
+
|
|
1296
|
+
</h3><div class="docstring">
|
|
1297
|
+
<div class="discussion">
|
|
1298
|
+
|
|
1299
|
+
<p>Inserts a node at the beginning of the list</p>
|
|
1300
|
+
|
|
1301
|
+
|
|
1302
|
+
</div>
|
|
1303
|
+
</div>
|
|
1304
|
+
<div class="tags">
|
|
1305
|
+
<p class="tag_title">Parameters:</p>
|
|
1306
|
+
<ul class="param">
|
|
1307
|
+
|
|
1308
|
+
<li>
|
|
1309
|
+
|
|
1310
|
+
<span class='name'>nodo</span>
|
|
1311
|
+
|
|
1312
|
+
|
|
1313
|
+
<span class='type'>(<tt>Object</tt>)</span>
|
|
1314
|
+
|
|
1315
|
+
|
|
1316
|
+
|
|
1317
|
+
—
|
|
1318
|
+
<div class='inline'>
|
|
1319
|
+
<p>node to insert</p>
|
|
1320
|
+
</div>
|
|
1321
|
+
|
|
1322
|
+
</li>
|
|
1323
|
+
|
|
1324
|
+
</ul>
|
|
1325
|
+
|
|
1326
|
+
<p class="tag_title">Returns:</p>
|
|
1327
|
+
<ul class="return">
|
|
1328
|
+
|
|
1329
|
+
<li>
|
|
1330
|
+
|
|
1331
|
+
|
|
1332
|
+
<span class='type'></span>
|
|
1333
|
+
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
<div class='inline'>
|
|
1338
|
+
<p>nil</p>
|
|
1339
|
+
</div>
|
|
1340
|
+
|
|
1341
|
+
</li>
|
|
1342
|
+
|
|
1343
|
+
</ul>
|
|
1344
|
+
|
|
1345
|
+
</div><table class="source_code">
|
|
1346
|
+
<tr>
|
|
1347
|
+
<td>
|
|
1348
|
+
<pre class="lines">
|
|
1349
|
+
|
|
1350
|
+
|
|
1351
|
+
54
|
|
1352
|
+
55
|
|
1353
|
+
56
|
|
1354
|
+
57
|
|
1355
|
+
58
|
|
1356
|
+
59
|
|
1357
|
+
60
|
|
1358
|
+
61
|
|
1359
|
+
62
|
|
1360
|
+
63
|
|
1361
|
+
64</pre>
|
|
1362
|
+
</td>
|
|
1363
|
+
<td>
|
|
1364
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 54</span>
|
|
1365
|
+
|
|
1366
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_push'>push</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
|
1367
|
+
<span class='kw'>if</span> <span class='ivar'>@size</span> <span class='op'>==</span> <span class='int'>0</span> <span class='kw'>then</span>
|
|
1368
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1369
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1370
|
+
<span class='kw'>else</span>
|
|
1371
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1372
|
+
<span class='id identifier rubyid_nodo'>nodo</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
|
1373
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='id identifier rubyid_nodo'>nodo</span>
|
|
1374
|
+
<span class='kw'>end</span>
|
|
1375
|
+
<span class='ivar'>@size</span> <span class='op'>+=</span> <span class='int'>1</span>
|
|
1376
|
+
<span class='kw'>end</span></pre>
|
|
1377
|
+
</td>
|
|
1378
|
+
</tr>
|
|
1379
|
+
</table>
|
|
1380
|
+
</div>
|
|
1381
|
+
|
|
1382
|
+
<div class="method_details ">
|
|
1383
|
+
<h3 class="signature " id="truncate-instance_method">
|
|
1384
|
+
|
|
1385
|
+
#<strong>truncate</strong> ⇒ <tt>Object</tt>
|
|
1386
|
+
|
|
1387
|
+
|
|
1388
|
+
|
|
1389
|
+
|
|
1390
|
+
|
|
1391
|
+
</h3><div class="docstring">
|
|
1392
|
+
<div class="discussion">
|
|
1393
|
+
|
|
1394
|
+
<p>Deletes a node from the beginning of the list</p>
|
|
1395
|
+
|
|
1396
|
+
|
|
1397
|
+
</div>
|
|
1398
|
+
</div>
|
|
1399
|
+
<div class="tags">
|
|
1400
|
+
|
|
1401
|
+
<p class="tag_title">Returns:</p>
|
|
1402
|
+
<ul class="return">
|
|
1403
|
+
|
|
1404
|
+
<li>
|
|
1405
|
+
|
|
1406
|
+
|
|
1407
|
+
<span class='type'></span>
|
|
1408
|
+
|
|
1409
|
+
|
|
1410
|
+
|
|
1411
|
+
|
|
1412
|
+
<div class='inline'>
|
|
1413
|
+
<p>nil</p>
|
|
1414
|
+
</div>
|
|
1415
|
+
|
|
1416
|
+
</li>
|
|
1417
|
+
|
|
1418
|
+
</ul>
|
|
1419
|
+
|
|
1420
|
+
</div><table class="source_code">
|
|
1421
|
+
<tr>
|
|
1422
|
+
<td>
|
|
1423
|
+
<pre class="lines">
|
|
1424
|
+
|
|
1425
|
+
|
|
1426
|
+
83
|
|
1427
|
+
84
|
|
1428
|
+
85
|
|
1429
|
+
86
|
|
1430
|
+
87
|
|
1431
|
+
88
|
|
1432
|
+
89
|
|
1433
|
+
90
|
|
1434
|
+
91
|
|
1435
|
+
92
|
|
1436
|
+
93</pre>
|
|
1437
|
+
</td>
|
|
1438
|
+
<td>
|
|
1439
|
+
<pre class="code"><span class="info file"># File 'lib/nutrientes/list.rb', line 83</span>
|
|
1440
|
+
|
|
1441
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_truncate'>truncate</span>
|
|
1442
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span>
|
|
1443
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:next_</span><span class='rbracket'>]</span>
|
|
1444
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_nodo'>nodo</span><span class='lbracket'>[</span><span class='symbol'>:prev_</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1445
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1446
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>1</span>
|
|
1447
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1448
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
1449
|
+
<span class='ivar'>@size</span> <span class='op'>-=</span> <span class='int'>1</span>
|
|
1450
|
+
<span class='kw'>end</span>
|
|
1451
|
+
<span class='kw'>end</span></pre>
|
|
1452
|
+
</td>
|
|
1453
|
+
</tr>
|
|
1454
|
+
</table>
|
|
1455
|
+
</div>
|
|
1456
|
+
|
|
1457
|
+
</div>
|
|
1458
|
+
|
|
1459
|
+
</div>
|
|
1460
|
+
|
|
1461
|
+
<div id="footer">
|
|
1462
|
+
Generated on Wed Nov 15 09:37:57 2017 by
|
|
1463
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
1464
|
+
0.9.9 (ruby-2.3.0).
|
|
1465
|
+
</div>
|
|
1466
|
+
|
|
1467
|
+
</div>
|
|
1468
|
+
</body>
|
|
1469
|
+
</html>
|