networkr 0.0.1 → 0.0.2
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 +4 -4
- data/.yardoc/checksums +10 -0
- data/.yardoc/complete +0 -0
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/.yardoc/proxy_types +0 -0
- data/Gemfile.lock +1 -1
- data/README.md +148 -11
- data/doc/BinaryMinHeap.html +870 -0
- data/doc/Networkr.html +1035 -0
- data/doc/Networkr/DiGraph.html +1013 -0
- data/doc/Networkr/Graph.html +1285 -0
- data/doc/Networkr/MultiGraph.html +532 -0
- data/doc/Networkr/Tracker.html +573 -0
- data/doc/NetworkrError.html +211 -0
- data/doc/_index.html +187 -0
- data/doc/class_list.html +51 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +58 -0
- data/doc/css/style.css +481 -0
- data/doc/file.README.html +128 -0
- data/doc/file_list.html +56 -0
- data/doc/frames.html +17 -0
- data/doc/index.html +128 -0
- data/doc/js/app.js +243 -0
- data/doc/js/full_list.js +216 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +555 -0
- data/doc/top-level-namespace.html +114 -0
- data/lib/networkr/algorithms/dijkstra.rb +8 -6
- data/lib/networkr/algorithms/karger.rb +19 -18
- data/lib/networkr/algorithms/kosaraju.rb +52 -38
- data/lib/networkr/algorithms/prim.rb +17 -14
- data/lib/networkr/graphs/digraph.rb +9 -12
- data/lib/networkr/graphs/graph.rb +11 -20
- data/lib/networkr/graphs/multigraph.rb +25 -30
- data/lib/networkr/version.rb +1 -1
- data/lib/utils/heap.rb +1 -1
- data/networkr.gemspec +7 -2
- metadata +37 -5
@@ -0,0 +1,1285 @@
|
|
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: Networkr::Graph
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.5
|
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 = "Networkr::Graph";
|
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"></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 (G)</a> »
|
40
|
+
<span class='title'><span class='object_link'><a href="../Networkr.html" title="Networkr (module)">Networkr</a></span></span>
|
41
|
+
»
|
42
|
+
<span class="title">Graph</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
|
+
<iframe id="search_frame" src="../class_list.html"></iframe>
|
63
|
+
|
64
|
+
<div id="content"><h1>Class: Networkr::Graph
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
</h1>
|
69
|
+
<div class="box_info">
|
70
|
+
|
71
|
+
<dl>
|
72
|
+
<dt>Inherits:</dt>
|
73
|
+
<dd>
|
74
|
+
<span class="inheritName">Object</span>
|
75
|
+
|
76
|
+
<ul class="fullTree">
|
77
|
+
<li>Object</li>
|
78
|
+
|
79
|
+
<li class="next">Networkr::Graph</li>
|
80
|
+
|
81
|
+
</ul>
|
82
|
+
<a href="#" class="inheritanceTree">show all</a>
|
83
|
+
|
84
|
+
</dd>
|
85
|
+
</dl>
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
<dl>
|
98
|
+
<dt>Defined in:</dt>
|
99
|
+
<dd>lib/networkr/graphs/graph.rb</dd>
|
100
|
+
</dl>
|
101
|
+
|
102
|
+
</div>
|
103
|
+
|
104
|
+
<div id="subclasses">
|
105
|
+
<h2>Direct Known Subclasses</h2>
|
106
|
+
<p class="children"><span class='object_link'><a href="DiGraph.html" title="Networkr::DiGraph (class)">DiGraph</a></span>, <span class='object_link'><a href="MultiGraph.html" title="Networkr::MultiGraph (class)">MultiGraph</a></span></p>
|
107
|
+
</div>
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
|
113
|
+
<ul class="summary">
|
114
|
+
|
115
|
+
<li class="public ">
|
116
|
+
<span class="summary_signature">
|
117
|
+
|
118
|
+
<a href="#adj-instance_method" title="#adj (instance method)">#<strong>adj</strong> ⇒ Object </a>
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
</span>
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
<span class="summary_desc"><div class='inline'>
|
136
|
+
<p>Returns the value of attribute adj.</p>
|
137
|
+
</div></span>
|
138
|
+
|
139
|
+
</li>
|
140
|
+
|
141
|
+
|
142
|
+
<li class="public ">
|
143
|
+
<span class="summary_signature">
|
144
|
+
|
145
|
+
<a href="#graph-instance_method" title="#graph (instance method)">#<strong>graph</strong> ⇒ Object </a>
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
</span>
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
<span class="summary_desc"><div class='inline'>
|
163
|
+
<p>Returns the value of attribute graph.</p>
|
164
|
+
</div></span>
|
165
|
+
|
166
|
+
</li>
|
167
|
+
|
168
|
+
|
169
|
+
<li class="public ">
|
170
|
+
<span class="summary_signature">
|
171
|
+
|
172
|
+
<a href="#nodes-instance_method" title="#nodes (instance method)">#<strong>nodes</strong> ⇒ Object </a>
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
</span>
|
177
|
+
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
<span class="summary_desc"><div class='inline'>
|
190
|
+
<p>Returns the value of attribute nodes.</p>
|
191
|
+
</div></span>
|
192
|
+
|
193
|
+
</li>
|
194
|
+
|
195
|
+
|
196
|
+
</ul>
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
|
202
|
+
<h2>
|
203
|
+
Instance Method Summary
|
204
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
205
|
+
</h2>
|
206
|
+
|
207
|
+
<ul class="summary">
|
208
|
+
|
209
|
+
<li class="public ">
|
210
|
+
<span class="summary_signature">
|
211
|
+
|
212
|
+
<a href="#add_edge-instance_method" title="#add_edge (instance method)">#<strong>add_edge</strong>(u, v, options = {}) ⇒ Object </a>
|
213
|
+
|
214
|
+
|
215
|
+
|
216
|
+
</span>
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
|
225
|
+
|
226
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
227
|
+
|
228
|
+
</li>
|
229
|
+
|
230
|
+
|
231
|
+
<li class="public ">
|
232
|
+
<span class="summary_signature">
|
233
|
+
|
234
|
+
<a href="#add_node-instance_method" title="#add_node (instance method)">#<strong>add_node</strong>(node, options = {}) ⇒ Object </a>
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
</span>
|
239
|
+
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
249
|
+
|
250
|
+
</li>
|
251
|
+
|
252
|
+
|
253
|
+
<li class="public ">
|
254
|
+
<span class="summary_signature">
|
255
|
+
|
256
|
+
<a href="#children_of-instance_method" title="#children_of (instance method)">#<strong>children_of</strong>(node) ⇒ Object </a>
|
257
|
+
|
258
|
+
|
259
|
+
|
260
|
+
</span>
|
261
|
+
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
|
270
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
271
|
+
|
272
|
+
</li>
|
273
|
+
|
274
|
+
|
275
|
+
<li class="public ">
|
276
|
+
<span class="summary_signature">
|
277
|
+
|
278
|
+
<a href="#clear-instance_method" title="#clear (instance method)">#<strong>clear</strong> ⇒ Object </a>
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
</span>
|
283
|
+
|
284
|
+
|
285
|
+
|
286
|
+
|
287
|
+
|
288
|
+
|
289
|
+
|
290
|
+
|
291
|
+
|
292
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
293
|
+
|
294
|
+
</li>
|
295
|
+
|
296
|
+
|
297
|
+
<li class="public ">
|
298
|
+
<span class="summary_signature">
|
299
|
+
|
300
|
+
<a href="#deep_copy-instance_method" title="#deep_copy (instance method)">#<strong>deep_copy</strong> ⇒ Object </a>
|
301
|
+
|
302
|
+
|
303
|
+
|
304
|
+
</span>
|
305
|
+
|
306
|
+
|
307
|
+
|
308
|
+
|
309
|
+
|
310
|
+
|
311
|
+
|
312
|
+
|
313
|
+
|
314
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
315
|
+
|
316
|
+
</li>
|
317
|
+
|
318
|
+
|
319
|
+
<li class="public ">
|
320
|
+
<span class="summary_signature">
|
321
|
+
|
322
|
+
<a href="#has_edge%3F-instance_method" title="#has_edge? (instance method)">#<strong>has_edge?</strong>(u, v) ⇒ Boolean </a>
|
323
|
+
|
324
|
+
|
325
|
+
|
326
|
+
</span>
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
|
335
|
+
|
336
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
337
|
+
|
338
|
+
</li>
|
339
|
+
|
340
|
+
|
341
|
+
<li class="public ">
|
342
|
+
<span class="summary_signature">
|
343
|
+
|
344
|
+
<a href="#has_node%3F-instance_method" title="#has_node? (instance method)">#<strong>has_node?</strong>(node) ⇒ Boolean </a>
|
345
|
+
|
346
|
+
|
347
|
+
|
348
|
+
</span>
|
349
|
+
|
350
|
+
|
351
|
+
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
|
356
|
+
|
357
|
+
|
358
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
359
|
+
|
360
|
+
</li>
|
361
|
+
|
362
|
+
|
363
|
+
<li class="public ">
|
364
|
+
<span class="summary_signature">
|
365
|
+
|
366
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(options = {}) ⇒ Graph </a>
|
367
|
+
|
368
|
+
|
369
|
+
|
370
|
+
</span>
|
371
|
+
|
372
|
+
|
373
|
+
<span class="note title constructor">constructor</span>
|
374
|
+
|
375
|
+
|
376
|
+
|
377
|
+
|
378
|
+
|
379
|
+
|
380
|
+
|
381
|
+
|
382
|
+
<span class="summary_desc"><div class='inline'>
|
383
|
+
<p>A new instance of Graph.</p>
|
384
|
+
</div></span>
|
385
|
+
|
386
|
+
</li>
|
387
|
+
|
388
|
+
|
389
|
+
<li class="public ">
|
390
|
+
<span class="summary_signature">
|
391
|
+
|
392
|
+
<a href="#is_directed%3F-instance_method" title="#is_directed? (instance method)">#<strong>is_directed?</strong> ⇒ Boolean </a>
|
393
|
+
|
394
|
+
|
395
|
+
|
396
|
+
</span>
|
397
|
+
|
398
|
+
|
399
|
+
|
400
|
+
|
401
|
+
|
402
|
+
|
403
|
+
|
404
|
+
|
405
|
+
|
406
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
407
|
+
|
408
|
+
</li>
|
409
|
+
|
410
|
+
|
411
|
+
<li class="public ">
|
412
|
+
<span class="summary_signature">
|
413
|
+
|
414
|
+
<a href="#is_multigraph%3F-instance_method" title="#is_multigraph? (instance method)">#<strong>is_multigraph?</strong> ⇒ Boolean </a>
|
415
|
+
|
416
|
+
|
417
|
+
|
418
|
+
</span>
|
419
|
+
|
420
|
+
|
421
|
+
|
422
|
+
|
423
|
+
|
424
|
+
|
425
|
+
|
426
|
+
|
427
|
+
|
428
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
429
|
+
|
430
|
+
</li>
|
431
|
+
|
432
|
+
|
433
|
+
<li class="public ">
|
434
|
+
<span class="summary_signature">
|
435
|
+
|
436
|
+
<a href="#length-instance_method" title="#length (instance method)">#<strong>length</strong> ⇒ Object </a>
|
437
|
+
|
438
|
+
|
439
|
+
|
440
|
+
</span>
|
441
|
+
|
442
|
+
|
443
|
+
|
444
|
+
|
445
|
+
|
446
|
+
|
447
|
+
|
448
|
+
|
449
|
+
|
450
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
451
|
+
|
452
|
+
</li>
|
453
|
+
|
454
|
+
|
455
|
+
<li class="public ">
|
456
|
+
<span class="summary_signature">
|
457
|
+
|
458
|
+
<a href="#remove_edge-instance_method" title="#remove_edge (instance method)">#<strong>remove_edge</strong>(u, v) ⇒ Object </a>
|
459
|
+
|
460
|
+
|
461
|
+
|
462
|
+
</span>
|
463
|
+
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
|
469
|
+
|
470
|
+
|
471
|
+
|
472
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
473
|
+
|
474
|
+
</li>
|
475
|
+
|
476
|
+
|
477
|
+
<li class="public ">
|
478
|
+
<span class="summary_signature">
|
479
|
+
|
480
|
+
<a href="#remove_node-instance_method" title="#remove_node (instance method)">#<strong>remove_node</strong>(node) ⇒ Object </a>
|
481
|
+
|
482
|
+
|
483
|
+
|
484
|
+
</span>
|
485
|
+
|
486
|
+
|
487
|
+
|
488
|
+
|
489
|
+
|
490
|
+
|
491
|
+
|
492
|
+
|
493
|
+
|
494
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
495
|
+
|
496
|
+
</li>
|
497
|
+
|
498
|
+
|
499
|
+
<li class="public ">
|
500
|
+
<span class="summary_signature">
|
501
|
+
|
502
|
+
<a href="#to_s-instance_method" title="#to_s (instance method)">#<strong>to_s</strong> ⇒ Object </a>
|
503
|
+
|
504
|
+
|
505
|
+
|
506
|
+
</span>
|
507
|
+
|
508
|
+
|
509
|
+
|
510
|
+
|
511
|
+
|
512
|
+
|
513
|
+
|
514
|
+
|
515
|
+
|
516
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
517
|
+
|
518
|
+
</li>
|
519
|
+
|
520
|
+
|
521
|
+
</ul>
|
522
|
+
|
523
|
+
|
524
|
+
<div id="constructor_details" class="method_details_list">
|
525
|
+
<h2>Constructor Details</h2>
|
526
|
+
|
527
|
+
<div class="method_details first">
|
528
|
+
<h3 class="signature first" id="initialize-instance_method">
|
529
|
+
|
530
|
+
#<strong>initialize</strong>(options = {}) ⇒ <tt><span class='object_link'><a href="" title="Networkr::Graph (class)">Graph</a></span></tt>
|
531
|
+
|
532
|
+
|
533
|
+
|
534
|
+
|
535
|
+
|
536
|
+
</h3><div class="docstring">
|
537
|
+
<div class="discussion">
|
538
|
+
|
539
|
+
<p>Returns a new instance of Graph</p>
|
540
|
+
|
541
|
+
|
542
|
+
</div>
|
543
|
+
</div>
|
544
|
+
<div class="tags">
|
545
|
+
|
546
|
+
|
547
|
+
</div><table class="source_code">
|
548
|
+
<tr>
|
549
|
+
<td>
|
550
|
+
<pre class="lines">
|
551
|
+
|
552
|
+
|
553
|
+
84
|
554
|
+
85
|
555
|
+
86
|
556
|
+
87
|
557
|
+
88</pre>
|
558
|
+
</td>
|
559
|
+
<td>
|
560
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 84</span>
|
561
|
+
|
562
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
563
|
+
<span class='ivar'>@graph</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span>
|
564
|
+
<span class='ivar'>@nodes</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
565
|
+
<span class='ivar'>@adj</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
566
|
+
<span class='kw'>end</span></pre>
|
567
|
+
</td>
|
568
|
+
</tr>
|
569
|
+
</table>
|
570
|
+
</div>
|
571
|
+
|
572
|
+
</div>
|
573
|
+
|
574
|
+
<div id="instance_attr_details" class="attr_details">
|
575
|
+
<h2>Instance Attribute Details</h2>
|
576
|
+
|
577
|
+
|
578
|
+
<span id="adj=-instance_method"></span>
|
579
|
+
<div class="method_details first">
|
580
|
+
<h3 class="signature first" id="adj-instance_method">
|
581
|
+
|
582
|
+
#<strong>adj</strong> ⇒ <tt>Object</tt>
|
583
|
+
|
584
|
+
|
585
|
+
|
586
|
+
|
587
|
+
|
588
|
+
</h3><div class="docstring">
|
589
|
+
<div class="discussion">
|
590
|
+
|
591
|
+
<p>Returns the value of attribute adj</p>
|
592
|
+
|
593
|
+
|
594
|
+
</div>
|
595
|
+
</div>
|
596
|
+
<div class="tags">
|
597
|
+
|
598
|
+
|
599
|
+
</div><table class="source_code">
|
600
|
+
<tr>
|
601
|
+
<td>
|
602
|
+
<pre class="lines">
|
603
|
+
|
604
|
+
|
605
|
+
82
|
606
|
+
83
|
607
|
+
84</pre>
|
608
|
+
</td>
|
609
|
+
<td>
|
610
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 82</span>
|
611
|
+
|
612
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_adj'>adj</span>
|
613
|
+
<span class='ivar'>@adj</span>
|
614
|
+
<span class='kw'>end</span></pre>
|
615
|
+
</td>
|
616
|
+
</tr>
|
617
|
+
</table>
|
618
|
+
</div>
|
619
|
+
|
620
|
+
|
621
|
+
<span id="graph=-instance_method"></span>
|
622
|
+
<div class="method_details ">
|
623
|
+
<h3 class="signature " id="graph-instance_method">
|
624
|
+
|
625
|
+
#<strong>graph</strong> ⇒ <tt>Object</tt>
|
626
|
+
|
627
|
+
|
628
|
+
|
629
|
+
|
630
|
+
|
631
|
+
</h3><div class="docstring">
|
632
|
+
<div class="discussion">
|
633
|
+
|
634
|
+
<p>Returns the value of attribute graph</p>
|
635
|
+
|
636
|
+
|
637
|
+
</div>
|
638
|
+
</div>
|
639
|
+
<div class="tags">
|
640
|
+
|
641
|
+
|
642
|
+
</div><table class="source_code">
|
643
|
+
<tr>
|
644
|
+
<td>
|
645
|
+
<pre class="lines">
|
646
|
+
|
647
|
+
|
648
|
+
82
|
649
|
+
83
|
650
|
+
84</pre>
|
651
|
+
</td>
|
652
|
+
<td>
|
653
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 82</span>
|
654
|
+
|
655
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_graph'>graph</span>
|
656
|
+
<span class='ivar'>@graph</span>
|
657
|
+
<span class='kw'>end</span></pre>
|
658
|
+
</td>
|
659
|
+
</tr>
|
660
|
+
</table>
|
661
|
+
</div>
|
662
|
+
|
663
|
+
|
664
|
+
<span id="nodes=-instance_method"></span>
|
665
|
+
<div class="method_details ">
|
666
|
+
<h3 class="signature " id="nodes-instance_method">
|
667
|
+
|
668
|
+
#<strong>nodes</strong> ⇒ <tt>Object</tt>
|
669
|
+
|
670
|
+
|
671
|
+
|
672
|
+
|
673
|
+
|
674
|
+
</h3><div class="docstring">
|
675
|
+
<div class="discussion">
|
676
|
+
|
677
|
+
<p>Returns the value of attribute nodes</p>
|
678
|
+
|
679
|
+
|
680
|
+
</div>
|
681
|
+
</div>
|
682
|
+
<div class="tags">
|
683
|
+
|
684
|
+
|
685
|
+
</div><table class="source_code">
|
686
|
+
<tr>
|
687
|
+
<td>
|
688
|
+
<pre class="lines">
|
689
|
+
|
690
|
+
|
691
|
+
82
|
692
|
+
83
|
693
|
+
84</pre>
|
694
|
+
</td>
|
695
|
+
<td>
|
696
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 82</span>
|
697
|
+
|
698
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_nodes'>nodes</span>
|
699
|
+
<span class='ivar'>@nodes</span>
|
700
|
+
<span class='kw'>end</span></pre>
|
701
|
+
</td>
|
702
|
+
</tr>
|
703
|
+
</table>
|
704
|
+
</div>
|
705
|
+
|
706
|
+
</div>
|
707
|
+
|
708
|
+
|
709
|
+
<div id="instance_method_details" class="method_details_list">
|
710
|
+
<h2>Instance Method Details</h2>
|
711
|
+
|
712
|
+
|
713
|
+
<div class="method_details first">
|
714
|
+
<h3 class="signature first" id="add_edge-instance_method">
|
715
|
+
|
716
|
+
#<strong>add_edge</strong>(u, v, options = {}) ⇒ <tt>Object</tt>
|
717
|
+
|
718
|
+
|
719
|
+
|
720
|
+
|
721
|
+
|
722
|
+
</h3><table class="source_code">
|
723
|
+
<tr>
|
724
|
+
<td>
|
725
|
+
<pre class="lines">
|
726
|
+
|
727
|
+
|
728
|
+
113
|
729
|
+
114
|
730
|
+
115
|
731
|
+
116
|
732
|
+
117
|
733
|
+
118
|
734
|
+
119
|
735
|
+
120
|
736
|
+
121
|
737
|
+
122
|
738
|
+
123
|
739
|
+
124
|
740
|
+
125
|
741
|
+
126</pre>
|
742
|
+
</td>
|
743
|
+
<td>
|
744
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 113</span>
|
745
|
+
|
746
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_add_edge'>add_edge</span><span class='lparen'>(</span><span class='id identifier rubyid_u'>u</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
747
|
+
<span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span>
|
748
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
749
|
+
<span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
750
|
+
<span class='kw'>end</span>
|
751
|
+
<span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span>
|
752
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
753
|
+
<span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
754
|
+
<span class='kw'>end</span>
|
755
|
+
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
756
|
+
<span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
757
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span>
|
758
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span>
|
759
|
+
<span class='kw'>end</span></pre>
|
760
|
+
</td>
|
761
|
+
</tr>
|
762
|
+
</table>
|
763
|
+
</div>
|
764
|
+
|
765
|
+
<div class="method_details ">
|
766
|
+
<h3 class="signature " id="add_node-instance_method">
|
767
|
+
|
768
|
+
#<strong>add_node</strong>(node, options = {}) ⇒ <tt>Object</tt>
|
769
|
+
|
770
|
+
|
771
|
+
|
772
|
+
|
773
|
+
|
774
|
+
</h3><table class="source_code">
|
775
|
+
<tr>
|
776
|
+
<td>
|
777
|
+
<pre class="lines">
|
778
|
+
|
779
|
+
|
780
|
+
90
|
781
|
+
91
|
782
|
+
92
|
783
|
+
93
|
784
|
+
94
|
785
|
+
95
|
786
|
+
96
|
787
|
+
97</pre>
|
788
|
+
</td>
|
789
|
+
<td>
|
790
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 90</span>
|
791
|
+
|
792
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_add_node'>add_node</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
793
|
+
<span class='kw'>if</span> <span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span>
|
794
|
+
<span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
795
|
+
<span class='kw'>else</span>
|
796
|
+
<span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span>
|
797
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
798
|
+
<span class='kw'>end</span>
|
799
|
+
<span class='kw'>end</span></pre>
|
800
|
+
</td>
|
801
|
+
</tr>
|
802
|
+
</table>
|
803
|
+
</div>
|
804
|
+
|
805
|
+
<div class="method_details ">
|
806
|
+
<h3 class="signature " id="children_of-instance_method">
|
807
|
+
|
808
|
+
#<strong>children_of</strong>(node) ⇒ <tt>Object</tt>
|
809
|
+
|
810
|
+
|
811
|
+
|
812
|
+
|
813
|
+
|
814
|
+
</h3><table class="source_code">
|
815
|
+
<tr>
|
816
|
+
<td>
|
817
|
+
<pre class="lines">
|
818
|
+
|
819
|
+
|
820
|
+
139
|
821
|
+
140
|
822
|
+
141</pre>
|
823
|
+
</td>
|
824
|
+
<td>
|
825
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 139</span>
|
826
|
+
|
827
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_children_of'>children_of</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
828
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span>
|
829
|
+
<span class='kw'>end</span></pre>
|
830
|
+
</td>
|
831
|
+
</tr>
|
832
|
+
</table>
|
833
|
+
</div>
|
834
|
+
|
835
|
+
<div class="method_details ">
|
836
|
+
<h3 class="signature " id="clear-instance_method">
|
837
|
+
|
838
|
+
#<strong>clear</strong> ⇒ <tt>Object</tt>
|
839
|
+
|
840
|
+
|
841
|
+
|
842
|
+
|
843
|
+
|
844
|
+
</h3><table class="source_code">
|
845
|
+
<tr>
|
846
|
+
<td>
|
847
|
+
<pre class="lines">
|
848
|
+
|
849
|
+
|
850
|
+
155
|
851
|
+
156
|
852
|
+
157
|
853
|
+
158
|
854
|
+
159</pre>
|
855
|
+
</td>
|
856
|
+
<td>
|
857
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 155</span>
|
858
|
+
|
859
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_clear'>clear</span>
|
860
|
+
<span class='ivar'>@graph</span><span class='period'>.</span><span class='id identifier rubyid_clear'>clear</span>
|
861
|
+
<span class='ivar'>@nodes</span><span class='period'>.</span><span class='id identifier rubyid_clear'>clear</span>
|
862
|
+
<span class='ivar'>@adj</span><span class='period'>.</span><span class='id identifier rubyid_clear'>clear</span>
|
863
|
+
<span class='kw'>end</span></pre>
|
864
|
+
</td>
|
865
|
+
</tr>
|
866
|
+
</table>
|
867
|
+
</div>
|
868
|
+
|
869
|
+
<div class="method_details ">
|
870
|
+
<h3 class="signature " id="deep_copy-instance_method">
|
871
|
+
|
872
|
+
#<strong>deep_copy</strong> ⇒ <tt>Object</tt>
|
873
|
+
|
874
|
+
|
875
|
+
|
876
|
+
|
877
|
+
|
878
|
+
</h3><table class="source_code">
|
879
|
+
<tr>
|
880
|
+
<td>
|
881
|
+
<pre class="lines">
|
882
|
+
|
883
|
+
|
884
|
+
161
|
885
|
+
162
|
886
|
+
163</pre>
|
887
|
+
</td>
|
888
|
+
<td>
|
889
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 161</span>
|
890
|
+
|
891
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_deep_copy'>deep_copy</span>
|
892
|
+
<span class='const'>Marshal</span><span class='period'>.</span><span class='id identifier rubyid_load'>load</span><span class='lparen'>(</span><span class='const'>Marshal</span><span class='period'>.</span><span class='id identifier rubyid_dump'>dump</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
893
|
+
<span class='kw'>end</span></pre>
|
894
|
+
</td>
|
895
|
+
</tr>
|
896
|
+
</table>
|
897
|
+
</div>
|
898
|
+
|
899
|
+
<div class="method_details ">
|
900
|
+
<h3 class="signature " id="has_edge?-instance_method">
|
901
|
+
|
902
|
+
#<strong>has_edge?</strong>(u, v) ⇒ <tt>Boolean</tt>
|
903
|
+
|
904
|
+
|
905
|
+
|
906
|
+
|
907
|
+
|
908
|
+
</h3><div class="docstring">
|
909
|
+
<div class="discussion">
|
910
|
+
|
911
|
+
|
912
|
+
</div>
|
913
|
+
</div>
|
914
|
+
<div class="tags">
|
915
|
+
|
916
|
+
<p class="tag_title">Returns:</p>
|
917
|
+
<ul class="return">
|
918
|
+
|
919
|
+
<li>
|
920
|
+
|
921
|
+
|
922
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
923
|
+
|
924
|
+
|
925
|
+
|
926
|
+
</li>
|
927
|
+
|
928
|
+
</ul>
|
929
|
+
|
930
|
+
</div><table class="source_code">
|
931
|
+
<tr>
|
932
|
+
<td>
|
933
|
+
<pre class="lines">
|
934
|
+
|
935
|
+
|
936
|
+
147
|
937
|
+
148
|
938
|
+
149</pre>
|
939
|
+
</td>
|
940
|
+
<td>
|
941
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 147</span>
|
942
|
+
|
943
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_has_edge?'>has_edge?</span><span class='lparen'>(</span><span class='id identifier rubyid_u'>u</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
|
944
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
|
945
|
+
<span class='kw'>end</span></pre>
|
946
|
+
</td>
|
947
|
+
</tr>
|
948
|
+
</table>
|
949
|
+
</div>
|
950
|
+
|
951
|
+
<div class="method_details ">
|
952
|
+
<h3 class="signature " id="has_node?-instance_method">
|
953
|
+
|
954
|
+
#<strong>has_node?</strong>(node) ⇒ <tt>Boolean</tt>
|
955
|
+
|
956
|
+
|
957
|
+
|
958
|
+
|
959
|
+
|
960
|
+
</h3><div class="docstring">
|
961
|
+
<div class="discussion">
|
962
|
+
|
963
|
+
|
964
|
+
</div>
|
965
|
+
</div>
|
966
|
+
<div class="tags">
|
967
|
+
|
968
|
+
<p class="tag_title">Returns:</p>
|
969
|
+
<ul class="return">
|
970
|
+
|
971
|
+
<li>
|
972
|
+
|
973
|
+
|
974
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
975
|
+
|
976
|
+
|
977
|
+
|
978
|
+
</li>
|
979
|
+
|
980
|
+
</ul>
|
981
|
+
|
982
|
+
</div><table class="source_code">
|
983
|
+
<tr>
|
984
|
+
<td>
|
985
|
+
<pre class="lines">
|
986
|
+
|
987
|
+
|
988
|
+
143
|
989
|
+
144
|
990
|
+
145</pre>
|
991
|
+
</td>
|
992
|
+
<td>
|
993
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 143</span>
|
994
|
+
|
995
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_has_node?'>has_node?</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
996
|
+
<span class='ivar'>@nodes</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
997
|
+
<span class='kw'>end</span></pre>
|
998
|
+
</td>
|
999
|
+
</tr>
|
1000
|
+
</table>
|
1001
|
+
</div>
|
1002
|
+
|
1003
|
+
<div class="method_details ">
|
1004
|
+
<h3 class="signature " id="is_directed?-instance_method">
|
1005
|
+
|
1006
|
+
#<strong>is_directed?</strong> ⇒ <tt>Boolean</tt>
|
1007
|
+
|
1008
|
+
|
1009
|
+
|
1010
|
+
|
1011
|
+
|
1012
|
+
</h3><div class="docstring">
|
1013
|
+
<div class="discussion">
|
1014
|
+
|
1015
|
+
|
1016
|
+
</div>
|
1017
|
+
</div>
|
1018
|
+
<div class="tags">
|
1019
|
+
|
1020
|
+
<p class="tag_title">Returns:</p>
|
1021
|
+
<ul class="return">
|
1022
|
+
|
1023
|
+
<li>
|
1024
|
+
|
1025
|
+
|
1026
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1027
|
+
|
1028
|
+
|
1029
|
+
|
1030
|
+
</li>
|
1031
|
+
|
1032
|
+
</ul>
|
1033
|
+
|
1034
|
+
</div><table class="source_code">
|
1035
|
+
<tr>
|
1036
|
+
<td>
|
1037
|
+
<pre class="lines">
|
1038
|
+
|
1039
|
+
|
1040
|
+
169
|
1041
|
+
170
|
1042
|
+
171</pre>
|
1043
|
+
</td>
|
1044
|
+
<td>
|
1045
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 169</span>
|
1046
|
+
|
1047
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_is_directed?'>is_directed?</span>
|
1048
|
+
<span class='kw'>false</span>
|
1049
|
+
<span class='kw'>end</span></pre>
|
1050
|
+
</td>
|
1051
|
+
</tr>
|
1052
|
+
</table>
|
1053
|
+
</div>
|
1054
|
+
|
1055
|
+
<div class="method_details ">
|
1056
|
+
<h3 class="signature " id="is_multigraph?-instance_method">
|
1057
|
+
|
1058
|
+
#<strong>is_multigraph?</strong> ⇒ <tt>Boolean</tt>
|
1059
|
+
|
1060
|
+
|
1061
|
+
|
1062
|
+
|
1063
|
+
|
1064
|
+
</h3><div class="docstring">
|
1065
|
+
<div class="discussion">
|
1066
|
+
|
1067
|
+
|
1068
|
+
</div>
|
1069
|
+
</div>
|
1070
|
+
<div class="tags">
|
1071
|
+
|
1072
|
+
<p class="tag_title">Returns:</p>
|
1073
|
+
<ul class="return">
|
1074
|
+
|
1075
|
+
<li>
|
1076
|
+
|
1077
|
+
|
1078
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1079
|
+
|
1080
|
+
|
1081
|
+
|
1082
|
+
</li>
|
1083
|
+
|
1084
|
+
</ul>
|
1085
|
+
|
1086
|
+
</div><table class="source_code">
|
1087
|
+
<tr>
|
1088
|
+
<td>
|
1089
|
+
<pre class="lines">
|
1090
|
+
|
1091
|
+
|
1092
|
+
165
|
1093
|
+
166
|
1094
|
+
167</pre>
|
1095
|
+
</td>
|
1096
|
+
<td>
|
1097
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 165</span>
|
1098
|
+
|
1099
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_is_multigraph?'>is_multigraph?</span>
|
1100
|
+
<span class='kw'>false</span>
|
1101
|
+
<span class='kw'>end</span></pre>
|
1102
|
+
</td>
|
1103
|
+
</tr>
|
1104
|
+
</table>
|
1105
|
+
</div>
|
1106
|
+
|
1107
|
+
<div class="method_details ">
|
1108
|
+
<h3 class="signature " id="length-instance_method">
|
1109
|
+
|
1110
|
+
#<strong>length</strong> ⇒ <tt>Object</tt>
|
1111
|
+
|
1112
|
+
|
1113
|
+
|
1114
|
+
|
1115
|
+
|
1116
|
+
</h3><table class="source_code">
|
1117
|
+
<tr>
|
1118
|
+
<td>
|
1119
|
+
<pre class="lines">
|
1120
|
+
|
1121
|
+
|
1122
|
+
151
|
1123
|
+
152
|
1124
|
+
153</pre>
|
1125
|
+
</td>
|
1126
|
+
<td>
|
1127
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 151</span>
|
1128
|
+
|
1129
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_length'>length</span>
|
1130
|
+
<span class='ivar'>@nodes</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span>
|
1131
|
+
<span class='kw'>end</span></pre>
|
1132
|
+
</td>
|
1133
|
+
</tr>
|
1134
|
+
</table>
|
1135
|
+
</div>
|
1136
|
+
|
1137
|
+
<div class="method_details ">
|
1138
|
+
<h3 class="signature " id="remove_edge-instance_method">
|
1139
|
+
|
1140
|
+
#<strong>remove_edge</strong>(u, v) ⇒ <tt>Object</tt>
|
1141
|
+
|
1142
|
+
|
1143
|
+
|
1144
|
+
|
1145
|
+
|
1146
|
+
</h3><table class="source_code">
|
1147
|
+
<tr>
|
1148
|
+
<td>
|
1149
|
+
<pre class="lines">
|
1150
|
+
|
1151
|
+
|
1152
|
+
128
|
1153
|
+
129
|
1154
|
+
130
|
1155
|
+
131
|
1156
|
+
132
|
1157
|
+
133
|
1158
|
+
134
|
1159
|
+
135
|
1160
|
+
136
|
1161
|
+
137</pre>
|
1162
|
+
</td>
|
1163
|
+
<td>
|
1164
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 128</span>
|
1165
|
+
|
1166
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_remove_edge'>remove_edge</span><span class='lparen'>(</span><span class='id identifier rubyid_u'>u</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
|
1167
|
+
<span class='kw'>if</span> <span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span>
|
1168
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_u'>u</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
|
1169
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_u'>u</span> <span class='op'>!=</span> <span class='id identifier rubyid_v'>v</span>
|
1170
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_v'>v</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_u'>u</span><span class='rparen'>)</span>
|
1171
|
+
<span class='kw'>end</span>
|
1172
|
+
<span class='kw'>else</span>
|
1173
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>NetworkrError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Edge </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_u'>u</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_v'>v</span><span class='embexpr_end'>}</span><span class='tstring_content'> not in graph</span><span class='tstring_end'>"</span></span>
|
1174
|
+
<span class='kw'>end</span>
|
1175
|
+
<span class='kw'>end</span></pre>
|
1176
|
+
</td>
|
1177
|
+
</tr>
|
1178
|
+
</table>
|
1179
|
+
</div>
|
1180
|
+
|
1181
|
+
<div class="method_details ">
|
1182
|
+
<h3 class="signature " id="remove_node-instance_method">
|
1183
|
+
|
1184
|
+
#<strong>remove_node</strong>(node) ⇒ <tt>Object</tt>
|
1185
|
+
|
1186
|
+
|
1187
|
+
|
1188
|
+
|
1189
|
+
|
1190
|
+
</h3><table class="source_code">
|
1191
|
+
<tr>
|
1192
|
+
<td>
|
1193
|
+
<pre class="lines">
|
1194
|
+
|
1195
|
+
|
1196
|
+
99
|
1197
|
+
100
|
1198
|
+
101
|
1199
|
+
102
|
1200
|
+
103
|
1201
|
+
104
|
1202
|
+
105
|
1203
|
+
106
|
1204
|
+
107
|
1205
|
+
108
|
1206
|
+
109
|
1207
|
+
110
|
1208
|
+
111</pre>
|
1209
|
+
</td>
|
1210
|
+
<td>
|
1211
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 99</span>
|
1212
|
+
|
1213
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_remove_node'>remove_node</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
1214
|
+
<span class='kw'>if</span> <span class='ivar'>@nodes</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span>
|
1215
|
+
<span class='ivar'>@nodes</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
1216
|
+
<span class='kw'>else</span>
|
1217
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>NetworkrError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Node </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_node'>node</span><span class='embexpr_end'>}</span><span class='tstring_content'> not in graph</span><span class='tstring_end'>"</span></span>
|
1218
|
+
<span class='kw'>end</span>
|
1219
|
+
|
1220
|
+
<span class='id identifier rubyid_nbrs'>nbrs</span> <span class='op'>=</span> <span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_node'>node</span><span class='rbracket'>]</span>
|
1221
|
+
<span class='id identifier rubyid_nbrs'>nbrs</span><span class='period'>.</span><span class='id identifier rubyid_each_key'>each_key</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_nbr'>nbr</span><span class='op'>|</span>
|
1222
|
+
<span class='ivar'>@adj</span><span class='lbracket'>[</span><span class='id identifier rubyid_nbr'>nbr</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
1223
|
+
<span class='kw'>end</span>
|
1224
|
+
<span class='ivar'>@adj</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_node'>node</span><span class='rparen'>)</span>
|
1225
|
+
<span class='kw'>end</span></pre>
|
1226
|
+
</td>
|
1227
|
+
</tr>
|
1228
|
+
</table>
|
1229
|
+
</div>
|
1230
|
+
|
1231
|
+
<div class="method_details ">
|
1232
|
+
<h3 class="signature " id="to_s-instance_method">
|
1233
|
+
|
1234
|
+
#<strong>to_s</strong> ⇒ <tt>Object</tt>
|
1235
|
+
|
1236
|
+
|
1237
|
+
|
1238
|
+
|
1239
|
+
|
1240
|
+
</h3><table class="source_code">
|
1241
|
+
<tr>
|
1242
|
+
<td>
|
1243
|
+
<pre class="lines">
|
1244
|
+
|
1245
|
+
|
1246
|
+
173
|
1247
|
+
174
|
1248
|
+
175
|
1249
|
+
176
|
1250
|
+
177
|
1251
|
+
178
|
1252
|
+
179
|
1253
|
+
180
|
1254
|
+
181</pre>
|
1255
|
+
</td>
|
1256
|
+
<td>
|
1257
|
+
<pre class="code"><span class="info file"># File 'lib/networkr/graphs/graph.rb', line 173</span>
|
1258
|
+
|
1259
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_to_s'>to_s</span>
|
1260
|
+
<span class='id identifier rubyid_res'>res</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
|
1261
|
+
<span class='ivar'>@adj</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_u'>u</span><span class='comma'>,</span> <span class='id identifier rubyid_nbrs'>nbrs</span><span class='op'>|</span>
|
1262
|
+
<span class='id identifier rubyid_nbrs'>nbrs</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_v'>v</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='op'>|</span>
|
1263
|
+
<span class='id identifier rubyid_res'>res</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_res'>res</span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_u'>u</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_v'>v</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_options'>options</span><span class='embexpr_end'>}</span><span class='tstring_content'>\n</span><span class='tstring_end'>"</span></span>
|
1264
|
+
<span class='kw'>end</span>
|
1265
|
+
<span class='kw'>end</span>
|
1266
|
+
<span class='id identifier rubyid_res'>res</span><span class='lbracket'>[</span><span class='int'>0</span><span class='op'>...</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span>
|
1267
|
+
<span class='kw'>end</span></pre>
|
1268
|
+
</td>
|
1269
|
+
</tr>
|
1270
|
+
</table>
|
1271
|
+
</div>
|
1272
|
+
|
1273
|
+
</div>
|
1274
|
+
|
1275
|
+
</div>
|
1276
|
+
|
1277
|
+
<div id="footer">
|
1278
|
+
Generated on Sun Jul 24 17:23:15 2016 by
|
1279
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1280
|
+
0.9.5 (ruby-2.1.2).
|
1281
|
+
</div>
|
1282
|
+
|
1283
|
+
</div>
|
1284
|
+
</body>
|
1285
|
+
</html>
|