metric_tools 0.0.8 → 0.0.9
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.
- data/.gitignore +2 -0
- data/.rspec +1 -0
- data/.rvmrc +1 -0
- data/config/pref.rb +11 -16
- data/doc/Gemfile.html +107 -0
- data/doc/MetricTools/IndexTree.html +308 -0
- data/doc/MetricTools/S3.html +325 -0
- data/doc/MetricTools/Skype.html +343 -0
- data/doc/MetricTools/SpreadSheet.html +552 -0
- data/doc/MetricTools/Table.html +952 -0
- data/doc/MetricTools.html +158 -0
- data/doc/Object.html +179 -0
- data/doc/Pref/GoogleDocs.html +176 -0
- data/doc/Pref/S3.html +181 -0
- data/doc/Pref/Skype.html +156 -0
- data/doc/Pref.html +141 -0
- data/doc/created.rid +15 -0
- data/doc/images/add.png +0 -0
- data/doc/images/brick.png +0 -0
- data/doc/images/brick_link.png +0 -0
- data/doc/images/bug.png +0 -0
- data/doc/images/bullet_black.png +0 -0
- data/doc/images/bullet_toggle_minus.png +0 -0
- data/doc/images/bullet_toggle_plus.png +0 -0
- data/doc/images/date.png +0 -0
- data/doc/images/delete.png +0 -0
- data/doc/images/find.png +0 -0
- data/doc/images/loadingAnimation.gif +0 -0
- data/doc/images/macFFBgHack.png +0 -0
- data/doc/images/package.png +0 -0
- data/doc/images/page_green.png +0 -0
- data/doc/images/page_white_text.png +0 -0
- data/doc/images/page_white_width.png +0 -0
- data/doc/images/plugin.png +0 -0
- data/doc/images/ruby.png +0 -0
- data/doc/images/tag_blue.png +0 -0
- data/doc/images/tag_green.png +0 -0
- data/doc/images/transparent.png +0 -0
- data/doc/images/wrench.png +0 -0
- data/doc/images/wrench_orange.png +0 -0
- data/doc/images/zoom.png +0 -0
- data/doc/index.html +100 -0
- data/doc/js/darkfish.js +153 -0
- data/doc/js/jquery.js +18 -0
- data/doc/js/navigation.js +142 -0
- data/doc/js/search.js +94 -0
- data/doc/js/search_index.js +1 -0
- data/doc/js/searcher.js +228 -0
- data/doc/rdoc.css +543 -0
- data/doc/table_of_contents.html +176 -0
- data/lib/metric_tools/spread_sheet.rb +23 -1
- data/metric_tools.gemspec +13 -0
- data/spec/index_tree_spec.rb +101 -0
- data/spec/s3_spec.rb +80 -0
- data/spec/skype_spec.rb +39 -0
- data/spec/spread_sheet_spec.rb +165 -0
- data/spec/table_spec.rb +114 -0
- metadata +60 -6
- data/Gemfile.lock +0 -45
@@ -0,0 +1,952 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
6
|
+
|
7
|
+
<title>class MetricTools::Table - RDoc Documentation</title>
|
8
|
+
|
9
|
+
<link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet">
|
10
|
+
|
11
|
+
<script type="text/javascript">
|
12
|
+
var rdoc_rel_prefix = "../";
|
13
|
+
</script>
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
16
|
+
<script type="text/javascript" charset="utf-8" src="../js/navigation.js"></script>
|
17
|
+
<script type="text/javascript" charset="utf-8" src="../js/search_index.js"></script>
|
18
|
+
<script type="text/javascript" charset="utf-8" src="../js/search.js"></script>
|
19
|
+
<script type="text/javascript" charset="utf-8" src="../js/searcher.js"></script>
|
20
|
+
<script type="text/javascript" charset="utf-8" src="../js/darkfish.js"></script>
|
21
|
+
|
22
|
+
|
23
|
+
<body id="top" class="class">
|
24
|
+
<nav id="metadata">
|
25
|
+
<nav id="home-section" class="section">
|
26
|
+
<h3 class="section-header">
|
27
|
+
<a href="../index.html">Home</a>
|
28
|
+
<a href="../table_of_contents.html#classes">Classes</a>
|
29
|
+
<a href="../table_of_contents.html#methods">Methods</a>
|
30
|
+
</h3>
|
31
|
+
</nav>
|
32
|
+
|
33
|
+
|
34
|
+
<nav id="search-section" class="section project-section" class="initially-hidden">
|
35
|
+
<form action="#" method="get" accept-charset="utf-8">
|
36
|
+
<h3 class="section-header">
|
37
|
+
<input type="text" name="search" placeholder="Search" id="search-field"
|
38
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
39
|
+
</h3>
|
40
|
+
</form>
|
41
|
+
|
42
|
+
<ul id="search-results" class="initially-hidden"></ul>
|
43
|
+
</nav>
|
44
|
+
|
45
|
+
|
46
|
+
<div id="file-metadata">
|
47
|
+
<nav id="file-list-section" class="section">
|
48
|
+
<h3 class="section-header">Defined In</h3>
|
49
|
+
<ul>
|
50
|
+
<li>lib/metric_tools/table.rb
|
51
|
+
</ul>
|
52
|
+
</nav>
|
53
|
+
|
54
|
+
|
55
|
+
</div>
|
56
|
+
|
57
|
+
<div id="class-metadata">
|
58
|
+
|
59
|
+
<nav id="parent-class-section" class="section">
|
60
|
+
<h3 class="section-header">Parent</h3>
|
61
|
+
|
62
|
+
<p class="link"><a href="../Object.html">Object</a>
|
63
|
+
|
64
|
+
</nav>
|
65
|
+
|
66
|
+
|
67
|
+
<!-- Method Quickref -->
|
68
|
+
<nav id="method-list-section" class="section">
|
69
|
+
<h3 class="section-header">Methods</h3>
|
70
|
+
|
71
|
+
<ul class="link-list">
|
72
|
+
|
73
|
+
<li><a href="#method-c-create">::create</a>
|
74
|
+
|
75
|
+
<li><a href="#method-c-create_with_array">::create_with_array</a>
|
76
|
+
|
77
|
+
<li><a href="#method-c-new">::new</a>
|
78
|
+
|
79
|
+
<li><a href="#method-i-5B-5D">#[]</a>
|
80
|
+
|
81
|
+
<li><a href="#method-i-5B-5D-3D">#[]=</a>
|
82
|
+
|
83
|
+
<li><a href="#method-i-add_below">#add_below</a>
|
84
|
+
|
85
|
+
<li><a href="#method-i-build">#build</a>
|
86
|
+
|
87
|
+
<li><a href="#method-i-collect">#collect</a>
|
88
|
+
|
89
|
+
<li><a href="#method-i-cols">#cols</a>
|
90
|
+
|
91
|
+
<li><a href="#method-i-each">#each</a>
|
92
|
+
|
93
|
+
<li><a href="#method-i-each_with_index">#each_with_index</a>
|
94
|
+
|
95
|
+
<li><a href="#method-i-height">#height</a>
|
96
|
+
|
97
|
+
<li><a href="#method-i-output_csv_file">#output_csv_file</a>
|
98
|
+
|
99
|
+
<li><a href="#method-i-output_file_with_seperator">#output_file_with_seperator</a>
|
100
|
+
|
101
|
+
<li><a href="#method-i-output_tsv_file">#output_tsv_file</a>
|
102
|
+
|
103
|
+
<li><a href="#method-i-print_csv">#print_csv</a>
|
104
|
+
|
105
|
+
<li><a href="#method-i-print_for_docs">#print_for_docs</a>
|
106
|
+
|
107
|
+
<li><a href="#method-i-print_pretty">#print_pretty</a>
|
108
|
+
|
109
|
+
<li><a href="#method-i-print_with_seperator">#print_with_seperator</a>
|
110
|
+
|
111
|
+
<li><a href="#method-i-rows">#rows</a>
|
112
|
+
|
113
|
+
<li><a href="#method-i-to_a">#to_a</a>
|
114
|
+
|
115
|
+
<li><a href="#method-i-width">#width</a>
|
116
|
+
|
117
|
+
</ul>
|
118
|
+
</nav>
|
119
|
+
|
120
|
+
</div>
|
121
|
+
|
122
|
+
<div id="project-metadata">
|
123
|
+
<nav id="fileindex-section" class="section project-section">
|
124
|
+
<h3 class="section-header">Pages</h3>
|
125
|
+
|
126
|
+
<ul>
|
127
|
+
|
128
|
+
<li class="file"><a href="../Gemfile.html">Gemfile</a>
|
129
|
+
|
130
|
+
<li class="file"><a href="../config/my_pref.html">my_pref</a>
|
131
|
+
|
132
|
+
</ul>
|
133
|
+
</nav>
|
134
|
+
|
135
|
+
<nav id="classindex-section" class="section project-section">
|
136
|
+
<h3 class="section-header">Class and Module Index</h3>
|
137
|
+
|
138
|
+
<ul class="link-list">
|
139
|
+
|
140
|
+
<li><a href="../MetricTools.html">MetricTools</a>
|
141
|
+
|
142
|
+
<li><a href="../MetricTools/IndexTree.html">MetricTools::IndexTree</a>
|
143
|
+
|
144
|
+
<li><a href="../MetricTools/S3.html">MetricTools::S3</a>
|
145
|
+
|
146
|
+
<li><a href="../MetricTools/Skype.html">MetricTools::Skype</a>
|
147
|
+
|
148
|
+
<li><a href="../MetricTools/SpreadSheet.html">MetricTools::SpreadSheet</a>
|
149
|
+
|
150
|
+
<li><a href="../MetricTools/Table.html">MetricTools::Table</a>
|
151
|
+
|
152
|
+
<li><a href="../Pref.html">Pref</a>
|
153
|
+
|
154
|
+
<li><a href="../Pref/GoogleDocs.html">Pref::GoogleDocs</a>
|
155
|
+
|
156
|
+
<li><a href="../Pref/S3.html">Pref::S3</a>
|
157
|
+
|
158
|
+
<li><a href="../Pref/Skype.html">Pref::Skype</a>
|
159
|
+
|
160
|
+
<li><a href="../Object.html">Object</a>
|
161
|
+
|
162
|
+
</ul>
|
163
|
+
</nav>
|
164
|
+
|
165
|
+
</div>
|
166
|
+
</nav>
|
167
|
+
|
168
|
+
<div id="documentation">
|
169
|
+
<h1 class="class">class MetricTools::Table</h1>
|
170
|
+
|
171
|
+
<div id="description" class="description">
|
172
|
+
|
173
|
+
<p>2次元配列のデータ構造を簡単に扱うためのクラス</p>
|
174
|
+
|
175
|
+
</div><!-- description -->
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
|
180
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
<!-- Methods -->
|
190
|
+
|
191
|
+
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
192
|
+
<h3 class="section-header">Public Class Methods</h3>
|
193
|
+
|
194
|
+
|
195
|
+
<div id="method-c-create" class="method-detail ">
|
196
|
+
|
197
|
+
<div class="method-heading">
|
198
|
+
<span class="method-name">create</span><span
|
199
|
+
class="method-args">(rows, cols, &proc)</span>
|
200
|
+
<span class="method-click-advice">click to toggle source</span>
|
201
|
+
</div>
|
202
|
+
|
203
|
+
|
204
|
+
<div class="method-description">
|
205
|
+
|
206
|
+
<p>Tableクラスのインスタンスを生成します</p>
|
207
|
+
|
208
|
+
<p>表の幅、高さを指定し、内容をブロックで指定します。 ブロックの返り値が、表の(i, j)の位置に入ります。</p>
|
209
|
+
|
210
|
+
<pre class="ruby"><span class="ruby-constant">Table</span>.<span class="ruby-identifier">create</span>(<span class="ruby-value">10</span>, <span class="ruby-value">5</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
211
|
+
<span class="ruby-keyword">return</span> <span class="ruby-node">"set to (#{i}, #{j})"</span>
|
212
|
+
}
|
213
|
+
</pre>
|
214
|
+
|
215
|
+
|
216
|
+
|
217
|
+
<div class="method-source-code" id="create-source">
|
218
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 23</span>
|
219
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>(<span class="ruby-identifier">rows</span>, <span class="ruby-identifier">cols</span>, &<span class="ruby-identifier">proc</span>)
|
220
|
+
<span class="ruby-identifier">table</span> = <span class="ruby-constant">Table</span>.<span class="ruby-identifier">new</span>
|
221
|
+
<span class="ruby-identifier">table</span>.<span class="ruby-identifier">build</span>(<span class="ruby-identifier">rows</span>, <span class="ruby-identifier">cols</span>, &<span class="ruby-identifier">proc</span>)
|
222
|
+
<span class="ruby-keyword">end</span></pre>
|
223
|
+
</div><!-- create-source -->
|
224
|
+
|
225
|
+
</div>
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
</div><!-- create-method -->
|
231
|
+
|
232
|
+
|
233
|
+
<div id="method-c-create_with_array" class="method-detail ">
|
234
|
+
|
235
|
+
<div class="method-heading">
|
236
|
+
<span class="method-name">create_with_array</span><span
|
237
|
+
class="method-args">(array)</span>
|
238
|
+
<span class="method-click-advice">click to toggle source</span>
|
239
|
+
</div>
|
240
|
+
|
241
|
+
|
242
|
+
<div class="method-description">
|
243
|
+
|
244
|
+
<p>Tableクラスのインスタンスを生成します</p>
|
245
|
+
|
246
|
+
<p>2次元配列を元にTableクラスに変換します。</p>
|
247
|
+
|
248
|
+
<pre>array = [[1, 2, 3], [4, 5, 6], [9, 0, '#']]
|
249
|
+
Table.create_with_array(array)</pre>
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
<div class="method-source-code" id="create_with_array-source">
|
254
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 34</span>
|
255
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">create_with_array</span>(<span class="ruby-identifier">array</span>)
|
256
|
+
<span class="ruby-constant">Table</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">array</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">length</span>, <span class="ruby-identifier">array</span>.<span class="ruby-identifier">length</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
257
|
+
<span class="ruby-identifier">array</span>[<span class="ruby-identifier">j</span>][<span class="ruby-identifier">i</span>]
|
258
|
+
}
|
259
|
+
<span class="ruby-keyword">end</span></pre>
|
260
|
+
</div><!-- create_with_array-source -->
|
261
|
+
|
262
|
+
</div>
|
263
|
+
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
</div><!-- create_with_array-method -->
|
268
|
+
|
269
|
+
|
270
|
+
<div id="method-c-new" class="method-detail ">
|
271
|
+
|
272
|
+
<div class="method-heading">
|
273
|
+
<span class="method-name">new</span><span
|
274
|
+
class="method-args">()</span>
|
275
|
+
<span class="method-click-advice">click to toggle source</span>
|
276
|
+
</div>
|
277
|
+
|
278
|
+
|
279
|
+
<div class="method-description">
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
+
<div class="method-source-code" id="new-source">
|
286
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 10</span>
|
287
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
|
288
|
+
<span class="ruby-ivar">@_inner_data</span> = {}
|
289
|
+
<span class="ruby-keyword">end</span></pre>
|
290
|
+
</div><!-- new-source -->
|
291
|
+
|
292
|
+
</div>
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
</div><!-- new-method -->
|
298
|
+
|
299
|
+
|
300
|
+
</section><!-- public-class-method-details -->
|
301
|
+
|
302
|
+
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
303
|
+
<h3 class="section-header">Public Instance Methods</h3>
|
304
|
+
|
305
|
+
|
306
|
+
<div id="method-i-5B-5D" class="method-detail ">
|
307
|
+
|
308
|
+
<div class="method-heading">
|
309
|
+
<span class="method-name">[]</span><span
|
310
|
+
class="method-args">(i, j)</span>
|
311
|
+
<span class="method-click-advice">click to toggle source</span>
|
312
|
+
</div>
|
313
|
+
|
314
|
+
|
315
|
+
<div class="method-description">
|
316
|
+
|
317
|
+
<p>インデクサを用いてアクセスします 表の大きさを超えていると nilが返ります。</p>
|
318
|
+
|
319
|
+
<pre>table[1, 10]</pre>
|
320
|
+
|
321
|
+
|
322
|
+
|
323
|
+
<div class="method-source-code" id="5B-5D-source">
|
324
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 47</span>
|
325
|
+
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)
|
326
|
+
<span class="ruby-ivar">@_inner_data</span>[<span class="ruby-identifier">index_to_key</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)]
|
327
|
+
<span class="ruby-keyword">end</span></pre>
|
328
|
+
</div><!-- 5B-5D-source -->
|
329
|
+
|
330
|
+
</div>
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
|
335
|
+
</div><!-- 5B-5D-method -->
|
336
|
+
|
337
|
+
|
338
|
+
<div id="method-i-5B-5D-3D" class="method-detail ">
|
339
|
+
|
340
|
+
<div class="method-heading">
|
341
|
+
<span class="method-name">[]=</span><span
|
342
|
+
class="method-args">(i, j, val)</span>
|
343
|
+
<span class="method-click-advice">click to toggle source</span>
|
344
|
+
</div>
|
345
|
+
|
346
|
+
|
347
|
+
<div class="method-description">
|
348
|
+
|
349
|
+
<p>インデクサを用いてアクセスします 表の大きさを超えているとき、自動的に拡張します</p>
|
350
|
+
|
351
|
+
<pre>table[1, 10] = val</pre>
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
<div class="method-source-code" id="5B-5D-3D-source">
|
356
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 56</span>
|
357
|
+
<span class="ruby-keyword">def</span> <span class="ruby-operator">[]=</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>, <span class="ruby-identifier">val</span>)
|
358
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-string">"can't specify negative number for position."</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">i</span> <span class="ruby-operator"><</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">j</span> <span class="ruby-operator"><</span> <span class="ruby-value">0</span>
|
359
|
+
|
360
|
+
<span class="ruby-ivar">@_inner_data</span>[<span class="ruby-identifier">index_to_key</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)] = <span class="ruby-identifier">val</span>
|
361
|
+
<span class="ruby-keyword">end</span></pre>
|
362
|
+
</div><!-- 5B-5D-3D-source -->
|
363
|
+
|
364
|
+
</div>
|
365
|
+
|
366
|
+
|
367
|
+
|
368
|
+
|
369
|
+
</div><!-- 5B-5D-3D-method -->
|
370
|
+
|
371
|
+
|
372
|
+
<div id="method-i-add_below" class="method-detail ">
|
373
|
+
|
374
|
+
<div class="method-heading">
|
375
|
+
<span class="method-name">add_below</span><span
|
376
|
+
class="method-args">(table)</span>
|
377
|
+
<span class="method-click-advice">click to toggle source</span>
|
378
|
+
</div>
|
379
|
+
|
380
|
+
|
381
|
+
<div class="method-description">
|
382
|
+
|
383
|
+
|
384
|
+
|
385
|
+
|
386
|
+
|
387
|
+
<div class="method-source-code" id="add_below-source">
|
388
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 100</span>
|
389
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">add_below</span>(<span class="ruby-identifier">table</span>)
|
390
|
+
<span class="ruby-identifier">table</span>.<span class="ruby-identifier">each_with_index</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">cell</span>, <span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
391
|
+
<span class="ruby-keyword">self</span>[<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span><span class="ruby-operator">+</span><span class="ruby-keyword">self</span>.<span class="ruby-identifier">height</span>] = <span class="ruby-identifier">cell</span>
|
392
|
+
}
|
393
|
+
<span class="ruby-keyword">self</span>
|
394
|
+
<span class="ruby-keyword">end</span></pre>
|
395
|
+
</div><!-- add_below-source -->
|
396
|
+
|
397
|
+
</div>
|
398
|
+
|
399
|
+
|
400
|
+
|
401
|
+
|
402
|
+
</div><!-- add_below-method -->
|
403
|
+
|
404
|
+
|
405
|
+
<div id="method-i-build" class="method-detail ">
|
406
|
+
|
407
|
+
<div class="method-heading">
|
408
|
+
<span class="method-name">build</span><span
|
409
|
+
class="method-args">(rows, cols, &proc)</span>
|
410
|
+
<span class="method-click-advice">click to toggle source</span>
|
411
|
+
</div>
|
412
|
+
|
413
|
+
|
414
|
+
<div class="method-description">
|
415
|
+
|
416
|
+
|
417
|
+
|
418
|
+
|
419
|
+
|
420
|
+
<div class="method-source-code" id="build-source">
|
421
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 211</span>
|
422
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">build</span>(<span class="ruby-identifier">rows</span>, <span class="ruby-identifier">cols</span>, &<span class="ruby-identifier">proc</span>)
|
423
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">i</span> <span class="ruby-keyword">in</span> <span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-identifier">rows</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>
|
424
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">j</span> <span class="ruby-keyword">in</span> <span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-identifier">cols</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>
|
425
|
+
<span class="ruby-ivar">@_inner_data</span>[<span class="ruby-identifier">index_to_key</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)] = <span class="ruby-identifier">proc</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)
|
426
|
+
<span class="ruby-keyword">end</span>
|
427
|
+
<span class="ruby-keyword">end</span>
|
428
|
+
<span class="ruby-keyword">self</span>
|
429
|
+
<span class="ruby-keyword">end</span></pre>
|
430
|
+
</div><!-- build-source -->
|
431
|
+
|
432
|
+
</div>
|
433
|
+
|
434
|
+
|
435
|
+
|
436
|
+
|
437
|
+
</div><!-- build-method -->
|
438
|
+
|
439
|
+
|
440
|
+
<div id="method-i-collect" class="method-detail ">
|
441
|
+
|
442
|
+
<div class="method-heading">
|
443
|
+
<span class="method-name">collect</span><span
|
444
|
+
class="method-args">(&proc)</span>
|
445
|
+
<span class="method-click-advice">click to toggle source</span>
|
446
|
+
</div>
|
447
|
+
|
448
|
+
|
449
|
+
<div class="method-description">
|
450
|
+
|
451
|
+
|
452
|
+
|
453
|
+
|
454
|
+
|
455
|
+
<div class="method-source-code" id="collect-source">
|
456
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 147</span>
|
457
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">collect</span>(&<span class="ruby-identifier">proc</span>)
|
458
|
+
<span class="ruby-identifier">new_one</span> = <span class="ruby-constant">Table</span>.<span class="ruby-identifier">create</span>(<span class="ruby-keyword">self</span>.<span class="ruby-identifier">rows</span>, <span class="ruby-keyword">self</span>.<span class="ruby-identifier">cols</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
459
|
+
<span class="ruby-identifier">proc</span>.<span class="ruby-identifier">call</span>(<span class="ruby-keyword">self</span>[<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>], <span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)
|
460
|
+
}
|
461
|
+
<span class="ruby-identifier">new_one</span>
|
462
|
+
<span class="ruby-keyword">end</span></pre>
|
463
|
+
</div><!-- collect-source -->
|
464
|
+
|
465
|
+
</div>
|
466
|
+
|
467
|
+
|
468
|
+
|
469
|
+
|
470
|
+
</div><!-- collect-method -->
|
471
|
+
|
472
|
+
|
473
|
+
<div id="method-i-cols" class="method-detail ">
|
474
|
+
|
475
|
+
<div class="method-heading">
|
476
|
+
<span class="method-name">cols</span><span
|
477
|
+
class="method-args">()</span>
|
478
|
+
<span class="method-click-advice">click to toggle source</span>
|
479
|
+
</div>
|
480
|
+
|
481
|
+
|
482
|
+
<div class="method-description">
|
483
|
+
|
484
|
+
<p>tableの幅(列数)を取得します</p>
|
485
|
+
|
486
|
+
|
487
|
+
|
488
|
+
<div class="method-source-code" id="cols-source">
|
489
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 77</span>
|
490
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cols</span>
|
491
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">width</span>
|
492
|
+
<span class="ruby-keyword">end</span></pre>
|
493
|
+
</div><!-- cols-source -->
|
494
|
+
|
495
|
+
</div>
|
496
|
+
|
497
|
+
|
498
|
+
|
499
|
+
|
500
|
+
</div><!-- cols-method -->
|
501
|
+
|
502
|
+
|
503
|
+
<div id="method-i-each" class="method-detail ">
|
504
|
+
|
505
|
+
<div class="method-heading">
|
506
|
+
<span class="method-name">each</span><span
|
507
|
+
class="method-args">(&proc)</span>
|
508
|
+
<span class="method-click-advice">click to toggle source</span>
|
509
|
+
</div>
|
510
|
+
|
511
|
+
|
512
|
+
<div class="method-description">
|
513
|
+
|
514
|
+
<p>全データに対して処理を行います</p>
|
515
|
+
|
516
|
+
<pre class="ruby"><span class="ruby-identifier">table</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">cell</span><span class="ruby-operator">|</span>
|
517
|
+
<span class="ruby-identifier">cell</span> <span class="ruby-operator">+=</span> <span class="ruby-value">10</span>
|
518
|
+
}
|
519
|
+
</pre>
|
520
|
+
|
521
|
+
|
522
|
+
|
523
|
+
<div class="method-source-code" id="each-source">
|
524
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 128</span>
|
525
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">each</span>(&<span class="ruby-identifier">proc</span>)
|
526
|
+
<span class="ruby-ivar">@_inner_data</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">each</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
|
527
|
+
<span class="ruby-identifier">proc</span>.<span class="ruby-identifier">call</span>(<span class="ruby-ivar">@_inner_data</span>[<span class="ruby-identifier">key</span>])
|
528
|
+
}
|
529
|
+
<span class="ruby-keyword">end</span></pre>
|
530
|
+
</div><!-- each-source -->
|
531
|
+
|
532
|
+
</div>
|
533
|
+
|
534
|
+
|
535
|
+
|
536
|
+
|
537
|
+
</div><!-- each-method -->
|
538
|
+
|
539
|
+
|
540
|
+
<div id="method-i-each_with_index" class="method-detail ">
|
541
|
+
|
542
|
+
<div class="method-heading">
|
543
|
+
<span class="method-name">each_with_index</span><span
|
544
|
+
class="method-args">(&proc)</span>
|
545
|
+
<span class="method-click-advice">click to toggle source</span>
|
546
|
+
</div>
|
547
|
+
|
548
|
+
|
549
|
+
<div class="method-description">
|
550
|
+
|
551
|
+
<p>全データに対して処理を行います。(i, j)にデータの座標が入ります。</p>
|
552
|
+
|
553
|
+
<pre class="ruby"><span class="ruby-identifier">table</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">cell</span>, <span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
554
|
+
<span class="ruby-identifier">cell</span> = <span class="ruby-identifier">i</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">j</span> * <span class="ruby-identifier">table</span>.<span class="ruby-identifier">width</span>
|
555
|
+
}
|
556
|
+
</pre>
|
557
|
+
|
558
|
+
|
559
|
+
|
560
|
+
<div class="method-source-code" id="each_with_index-source">
|
561
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 140</span>
|
562
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">each_with_index</span>(&<span class="ruby-identifier">proc</span>)
|
563
|
+
<span class="ruby-ivar">@_inner_data</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">each</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
|
564
|
+
<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span> = <span class="ruby-identifier">key_to_index</span>(<span class="ruby-identifier">key</span>)
|
565
|
+
<span class="ruby-identifier">proc</span>.<span class="ruby-identifier">call</span>(<span class="ruby-ivar">@_inner_data</span>[<span class="ruby-identifier">key</span>], <span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span>)
|
566
|
+
}
|
567
|
+
<span class="ruby-keyword">end</span></pre>
|
568
|
+
</div><!-- each_with_index-source -->
|
569
|
+
|
570
|
+
</div>
|
571
|
+
|
572
|
+
|
573
|
+
|
574
|
+
|
575
|
+
</div><!-- each_with_index-method -->
|
576
|
+
|
577
|
+
|
578
|
+
<div id="method-i-height" class="method-detail ">
|
579
|
+
|
580
|
+
<div class="method-heading">
|
581
|
+
<span class="method-name">height</span><span
|
582
|
+
class="method-args">()</span>
|
583
|
+
<span class="method-click-advice">click to toggle source</span>
|
584
|
+
</div>
|
585
|
+
|
586
|
+
|
587
|
+
<div class="method-description">
|
588
|
+
|
589
|
+
<p>tableの高さ(行数)を取得します</p>
|
590
|
+
|
591
|
+
|
592
|
+
|
593
|
+
<div class="method-source-code" id="height-source">
|
594
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 84</span>
|
595
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">height</span>
|
596
|
+
<span class="ruby-identifier">max</span> = <span class="ruby-value">0</span>
|
597
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">key</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@_inner_data</span>.<span class="ruby-identifier">keys</span>
|
598
|
+
<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span> = <span class="ruby-identifier">key_to_index</span>(<span class="ruby-identifier">key</span>)
|
599
|
+
<span class="ruby-identifier">max</span> = <span class="ruby-identifier">i</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">max</span> <span class="ruby-operator"><</span> <span class="ruby-identifier">i</span>
|
600
|
+
<span class="ruby-keyword">end</span>
|
601
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">max</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
602
|
+
<span class="ruby-keyword">end</span></pre>
|
603
|
+
</div><!-- height-source -->
|
604
|
+
|
605
|
+
</div>
|
606
|
+
|
607
|
+
|
608
|
+
|
609
|
+
|
610
|
+
</div><!-- height-method -->
|
611
|
+
|
612
|
+
|
613
|
+
<div id="method-i-output_csv_file" class="method-detail ">
|
614
|
+
|
615
|
+
<div class="method-heading">
|
616
|
+
<span class="method-name">output_csv_file</span><span
|
617
|
+
class="method-args">(path)</span>
|
618
|
+
<span class="method-click-advice">click to toggle source</span>
|
619
|
+
</div>
|
620
|
+
|
621
|
+
|
622
|
+
<div class="method-description">
|
623
|
+
|
624
|
+
<p>csvファイルとして出力します</p>
|
625
|
+
|
626
|
+
|
627
|
+
|
628
|
+
<div class="method-source-code" id="output_csv_file-source">
|
629
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 186</span>
|
630
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">output_csv_file</span>(<span class="ruby-identifier">path</span>)
|
631
|
+
<span class="ruby-identifier">output_file_with_seperator</span>(<span class="ruby-string">","</span>, <span class="ruby-identifier">path</span>)
|
632
|
+
<span class="ruby-keyword">end</span></pre>
|
633
|
+
</div><!-- output_csv_file-source -->
|
634
|
+
|
635
|
+
</div>
|
636
|
+
|
637
|
+
|
638
|
+
|
639
|
+
|
640
|
+
</div><!-- output_csv_file-method -->
|
641
|
+
|
642
|
+
|
643
|
+
<div id="method-i-output_file_with_seperator" class="method-detail ">
|
644
|
+
|
645
|
+
<div class="method-heading">
|
646
|
+
<span class="method-name">output_file_with_seperator</span><span
|
647
|
+
class="method-args">(s, path)</span>
|
648
|
+
<span class="method-click-advice">click to toggle source</span>
|
649
|
+
</div>
|
650
|
+
|
651
|
+
|
652
|
+
<div class="method-description">
|
653
|
+
|
654
|
+
|
655
|
+
|
656
|
+
|
657
|
+
|
658
|
+
<div class="method-source-code" id="output_file_with_seperator-source">
|
659
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 197</span>
|
660
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">output_file_with_seperator</span>(<span class="ruby-identifier">s</span>, <span class="ruby-identifier">path</span>)
|
661
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">"start output >> #{path}..."</span>
|
662
|
+
|
663
|
+
<span class="ruby-identifier">ret</span> = <span class="ruby-string">''</span>
|
664
|
+
<span class="ruby-identifier">to_a</span>.<span class="ruby-identifier">each</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">row</span><span class="ruby-operator">|</span>
|
665
|
+
<span class="ruby-identifier">ret</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">s</span>) <span class="ruby-operator">+</span> <span class="ruby-string">"\n"</span>
|
666
|
+
}
|
667
|
+
|
668
|
+
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">path</span>, <span class="ruby-string">'w'</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">fp</span><span class="ruby-operator">|</span>
|
669
|
+
<span class="ruby-identifier">fp</span>.<span class="ruby-identifier">write</span> <span class="ruby-identifier">ret</span>
|
670
|
+
}
|
671
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">"finish"</span>
|
672
|
+
<span class="ruby-keyword">end</span></pre>
|
673
|
+
</div><!-- output_file_with_seperator-source -->
|
674
|
+
|
675
|
+
</div>
|
676
|
+
|
677
|
+
|
678
|
+
|
679
|
+
|
680
|
+
</div><!-- output_file_with_seperator-method -->
|
681
|
+
|
682
|
+
|
683
|
+
<div id="method-i-output_tsv_file" class="method-detail ">
|
684
|
+
|
685
|
+
<div class="method-heading">
|
686
|
+
<span class="method-name">output_tsv_file</span><span
|
687
|
+
class="method-args">(path)</span>
|
688
|
+
<span class="method-click-advice">click to toggle source</span>
|
689
|
+
</div>
|
690
|
+
|
691
|
+
|
692
|
+
<div class="method-description">
|
693
|
+
|
694
|
+
<p>tsvファイルとして出力します</p>
|
695
|
+
|
696
|
+
|
697
|
+
|
698
|
+
<div class="method-source-code" id="output_tsv_file-source">
|
699
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 193</span>
|
700
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">output_tsv_file</span>(<span class="ruby-identifier">path</span>)
|
701
|
+
<span class="ruby-identifier">output_file_with_seperator</span>(<span class="ruby-string">"\t"</span>, <span class="ruby-identifier">path</span>)
|
702
|
+
<span class="ruby-keyword">end</span></pre>
|
703
|
+
</div><!-- output_tsv_file-source -->
|
704
|
+
|
705
|
+
</div>
|
706
|
+
|
707
|
+
|
708
|
+
|
709
|
+
|
710
|
+
</div><!-- output_tsv_file-method -->
|
711
|
+
|
712
|
+
|
713
|
+
<div id="method-i-print_csv" class="method-detail ">
|
714
|
+
|
715
|
+
<div class="method-heading">
|
716
|
+
<span class="method-name">print_csv</span><span
|
717
|
+
class="method-args">()</span>
|
718
|
+
<span class="method-click-advice">click to toggle source</span>
|
719
|
+
</div>
|
720
|
+
|
721
|
+
|
722
|
+
<div class="method-description">
|
723
|
+
|
724
|
+
<p>コンソールにcsv形式で出力します</p>
|
725
|
+
|
726
|
+
|
727
|
+
|
728
|
+
<div class="method-source-code" id="print_csv-source">
|
729
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 166</span>
|
730
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">print_csv</span>
|
731
|
+
<span class="ruby-identifier">print_with_seperator</span>(<span class="ruby-string">","</span>)
|
732
|
+
<span class="ruby-keyword">end</span></pre>
|
733
|
+
</div><!-- print_csv-source -->
|
734
|
+
|
735
|
+
</div>
|
736
|
+
|
737
|
+
|
738
|
+
|
739
|
+
|
740
|
+
</div><!-- print_csv-method -->
|
741
|
+
|
742
|
+
|
743
|
+
<div id="method-i-print_for_docs" class="method-detail ">
|
744
|
+
|
745
|
+
<div class="method-heading">
|
746
|
+
<span class="method-name">print_for_docs</span><span
|
747
|
+
class="method-args">()</span>
|
748
|
+
<span class="method-click-advice">click to toggle source</span>
|
749
|
+
</div>
|
750
|
+
|
751
|
+
|
752
|
+
<div class="method-description">
|
753
|
+
|
754
|
+
<p>コンソールにtsv形式で出力します</p>
|
755
|
+
|
756
|
+
|
757
|
+
|
758
|
+
<div class="method-source-code" id="print_for_docs-source">
|
759
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 173</span>
|
760
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">print_for_docs</span>
|
761
|
+
<span class="ruby-identifier">print_with_seperator</span>(<span class="ruby-string">"\t"</span>)
|
762
|
+
<span class="ruby-keyword">end</span></pre>
|
763
|
+
</div><!-- print_for_docs-source -->
|
764
|
+
|
765
|
+
</div>
|
766
|
+
|
767
|
+
|
768
|
+
|
769
|
+
|
770
|
+
</div><!-- print_for_docs-method -->
|
771
|
+
|
772
|
+
|
773
|
+
<div id="method-i-print_pretty" class="method-detail ">
|
774
|
+
|
775
|
+
<div class="method-heading">
|
776
|
+
<span class="method-name">print_pretty</span><span
|
777
|
+
class="method-args">()</span>
|
778
|
+
<span class="method-click-advice">click to toggle source</span>
|
779
|
+
</div>
|
780
|
+
|
781
|
+
|
782
|
+
<div class="method-description">
|
783
|
+
|
784
|
+
<p>コンソールに綺麗な表形式で出力します(Hirbを使用)</p>
|
785
|
+
|
786
|
+
|
787
|
+
|
788
|
+
<div class="method-source-code" id="print_pretty-source">
|
789
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 159</span>
|
790
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">print_pretty</span>
|
791
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-constant">Hirb</span><span class="ruby-operator">::</span><span class="ruby-constant">Helpers</span><span class="ruby-operator">::</span><span class="ruby-constant">Table</span>.<span class="ruby-identifier">render</span> <span class="ruby-ivar">@data</span>, <span class="ruby-value">:headers</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@headers</span>, <span class="ruby-value">:resize</span> =<span class="ruby-operator">></span> <span class="ruby-keyword">false</span>
|
792
|
+
<span class="ruby-keyword">end</span></pre>
|
793
|
+
</div><!-- print_pretty-source -->
|
794
|
+
|
795
|
+
</div>
|
796
|
+
|
797
|
+
|
798
|
+
|
799
|
+
|
800
|
+
</div><!-- print_pretty-method -->
|
801
|
+
|
802
|
+
|
803
|
+
<div id="method-i-print_with_seperator" class="method-detail ">
|
804
|
+
|
805
|
+
<div class="method-heading">
|
806
|
+
<span class="method-name">print_with_seperator</span><span
|
807
|
+
class="method-args">(s)</span>
|
808
|
+
<span class="method-click-advice">click to toggle source</span>
|
809
|
+
</div>
|
810
|
+
|
811
|
+
|
812
|
+
<div class="method-description">
|
813
|
+
|
814
|
+
|
815
|
+
|
816
|
+
|
817
|
+
|
818
|
+
<div class="method-source-code" id="print_with_seperator-source">
|
819
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 177</span>
|
820
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">print_with_seperator</span>(<span class="ruby-identifier">s</span>)
|
821
|
+
<span class="ruby-identifier">to_a</span>.<span class="ruby-identifier">each</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">row</span><span class="ruby-operator">|</span>
|
822
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">row</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">s</span>)
|
823
|
+
}
|
824
|
+
<span class="ruby-keyword">end</span></pre>
|
825
|
+
</div><!-- print_with_seperator-source -->
|
826
|
+
|
827
|
+
</div>
|
828
|
+
|
829
|
+
|
830
|
+
|
831
|
+
|
832
|
+
</div><!-- print_with_seperator-method -->
|
833
|
+
|
834
|
+
|
835
|
+
<div id="method-i-rows" class="method-detail ">
|
836
|
+
|
837
|
+
<div class="method-heading">
|
838
|
+
<span class="method-name">rows</span><span
|
839
|
+
class="method-args">()</span>
|
840
|
+
<span class="method-click-advice">click to toggle source</span>
|
841
|
+
</div>
|
842
|
+
|
843
|
+
|
844
|
+
<div class="method-description">
|
845
|
+
|
846
|
+
<p>tableの高さ(行数)を取得します</p>
|
847
|
+
|
848
|
+
|
849
|
+
|
850
|
+
<div class="method-source-code" id="rows-source">
|
851
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 96</span>
|
852
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">rows</span>
|
853
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">height</span>
|
854
|
+
<span class="ruby-keyword">end</span></pre>
|
855
|
+
</div><!-- rows-source -->
|
856
|
+
|
857
|
+
</div>
|
858
|
+
|
859
|
+
|
860
|
+
|
861
|
+
|
862
|
+
</div><!-- rows-method -->
|
863
|
+
|
864
|
+
|
865
|
+
<div id="method-i-to_a" class="method-detail ">
|
866
|
+
|
867
|
+
<div class="method-heading">
|
868
|
+
<span class="method-name">to_a</span><span
|
869
|
+
class="method-args">()</span>
|
870
|
+
<span class="method-click-advice">click to toggle source</span>
|
871
|
+
</div>
|
872
|
+
|
873
|
+
|
874
|
+
<div class="method-description">
|
875
|
+
|
876
|
+
<p>2次元配列を返します。自身は変更されません。</p>
|
877
|
+
|
878
|
+
<pre class="ruby"><span class="ruby-identifier">table</span>.<span class="ruby-identifier">to_a</span> =<span class="ruby-operator">></span> [[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>,<span class="ruby-value">3</span>], [<span class="ruby-value">4</span>,<span class="ruby-value">5</span>,<span class="ruby-value">6</span>], [<span class="ruby-value">9</span>,<span class="ruby-value">0</span>,<span class="ruby-string">'#'</span>]]
|
879
|
+
</pre>
|
880
|
+
|
881
|
+
|
882
|
+
|
883
|
+
<div class="method-source-code" id="to_a-source">
|
884
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 111</span>
|
885
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_a</span>
|
886
|
+
<span class="ruby-identifier">ret</span> = []
|
887
|
+
<span class="ruby-ivar">@_inner_data</span>.<span class="ruby-identifier">each</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
|
888
|
+
<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span> = <span class="ruby-identifier">key_to_index</span>(<span class="ruby-identifier">key</span>)
|
889
|
+
|
890
|
+
<span class="ruby-identifier">ret</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">||=</span> []
|
891
|
+
<span class="ruby-identifier">ret</span>[<span class="ruby-identifier">i</span>][<span class="ruby-identifier">j</span>] = <span class="ruby-identifier">val</span>
|
892
|
+
}
|
893
|
+
<span class="ruby-identifier">ret</span>
|
894
|
+
<span class="ruby-keyword">end</span></pre>
|
895
|
+
</div><!-- to_a-source -->
|
896
|
+
|
897
|
+
</div>
|
898
|
+
|
899
|
+
|
900
|
+
|
901
|
+
|
902
|
+
</div><!-- to_a-method -->
|
903
|
+
|
904
|
+
|
905
|
+
<div id="method-i-width" class="method-detail ">
|
906
|
+
|
907
|
+
<div class="method-heading">
|
908
|
+
<span class="method-name">width</span><span
|
909
|
+
class="method-args">()</span>
|
910
|
+
<span class="method-click-advice">click to toggle source</span>
|
911
|
+
</div>
|
912
|
+
|
913
|
+
|
914
|
+
<div class="method-description">
|
915
|
+
|
916
|
+
<p>tableの幅(列数)を取得します</p>
|
917
|
+
|
918
|
+
|
919
|
+
|
920
|
+
<div class="method-source-code" id="width-source">
|
921
|
+
<pre><span class="ruby-comment"># File lib/metric_tools/table.rb, line 65</span>
|
922
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">width</span>
|
923
|
+
<span class="ruby-identifier">max</span> = <span class="ruby-value">0</span>
|
924
|
+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">key</span> <span class="ruby-keyword">in</span> <span class="ruby-ivar">@_inner_data</span>.<span class="ruby-identifier">keys</span>
|
925
|
+
<span class="ruby-identifier">i</span>, <span class="ruby-identifier">j</span> = <span class="ruby-identifier">key_to_index</span>(<span class="ruby-identifier">key</span>)
|
926
|
+
<span class="ruby-identifier">max</span> = <span class="ruby-identifier">j</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">max</span> <span class="ruby-operator"><</span> <span class="ruby-identifier">j</span>
|
927
|
+
<span class="ruby-keyword">end</span>
|
928
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">max</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
929
|
+
<span class="ruby-keyword">end</span></pre>
|
930
|
+
</div><!-- width-source -->
|
931
|
+
|
932
|
+
</div>
|
933
|
+
|
934
|
+
|
935
|
+
|
936
|
+
|
937
|
+
</div><!-- width-method -->
|
938
|
+
|
939
|
+
|
940
|
+
</section><!-- public-instance-method-details -->
|
941
|
+
|
942
|
+
</section><!-- 5Buntitled-5D -->
|
943
|
+
|
944
|
+
</div><!-- documentation -->
|
945
|
+
|
946
|
+
|
947
|
+
<footer id="validator-badges">
|
948
|
+
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
949
|
+
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
950
|
+
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
951
|
+
</footer>
|
952
|
+
|