prelude 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/CHANGELOG +25 -1
  2. data/README +11 -12
  3. data/Rakefile +6 -10
  4. data/lib/prelude.rb +36 -91
  5. data/lib/prelude/{tuple.rb → array_list.rb} +30 -27
  6. data/lib/prelude/functions.rb +414 -0
  7. data/lib/prelude/functors.rb +72 -0
  8. data/lib/prelude/lambda.rb +89 -0
  9. data/lib/prelude/minimal_array_list.rb +61 -0
  10. data/lib/prelude/monad.rb +11 -15
  11. data/lib/prelude/proper_list.rb +47 -0
  12. data/lib/prelude/proper_ruby_list.rb +48 -0
  13. data/lib/prelude/util.rb +33 -0
  14. data/test/tc_functions.rb +801 -0
  15. data/test/tc_monad.rb +21 -41
  16. data/test/ts_prelude.rb +2 -8
  17. metadata +13 -36
  18. data/doc/classes/Kernel.html +0 -198
  19. data/doc/classes/Prelude.html +0 -241
  20. data/doc/classes/Prelude/EmptyListError.html +0 -113
  21. data/doc/classes/Prelude/List.html +0 -2692
  22. data/doc/classes/Prelude/MissingFunctionError.html +0 -113
  23. data/doc/classes/Prelude/Monad.html +0 -283
  24. data/doc/classes/Prelude/Tuple.html +0 -217
  25. data/doc/classes/Proc.html +0 -198
  26. data/doc/classes/Symbol.html +0 -219
  27. data/doc/created.rid +0 -1
  28. data/doc/files/CHANGELOG.html +0 -122
  29. data/doc/files/README.html +0 -328
  30. data/doc/files/TODO.html +0 -95
  31. data/doc/files/lib/prelude/list_rb.html +0 -83
  32. data/doc/files/lib/prelude/monad_rb.html +0 -83
  33. data/doc/files/lib/prelude/tuple_rb.html +0 -83
  34. data/doc/files/lib/prelude_rb.html +0 -98
  35. data/doc/fr_class_index.html +0 -35
  36. data/doc/fr_file_index.html +0 -33
  37. data/doc/fr_method_index.html +0 -140
  38. data/doc/index.html +0 -27
  39. data/doc/rdoc-style.css +0 -208
  40. data/lib/prelude/list.rb +0 -588
  41. data/test/tc_higher.rb +0 -89
  42. data/test/tc_list.rb +0 -777
  43. data/test/tc_tuple.rb +0 -82
@@ -1,113 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: Prelude::MissingFunctionError</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Prelude::MissingFunctionError</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../files/lib/prelude_rb.html">
59
- lib/prelude.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- RuntimeError
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- Thrown if no function was supplied
84
- </p>
85
-
86
- </div>
87
-
88
-
89
- </div>
90
-
91
-
92
- </div>
93
-
94
-
95
- <!-- if includes -->
96
-
97
- <div id="section">
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
- <!-- if method_list -->
107
-
108
-
109
- </div>
110
-
111
-
112
- </body>
113
- </html>
@@ -1,283 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Module: Prelude::Monad</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Module</strong></td>
53
- <td class="class-name-in-header">Prelude::Monad</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../files/lib/prelude/monad_rb.html">
59
- lib/prelude/monad.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- </table>
66
- </div>
67
- <!-- banner header -->
68
-
69
- <div id="bodyContent">
70
-
71
-
72
-
73
- <div id="contextContent">
74
-
75
- <div id="description">
76
- <p>
77
- $Id: monad.rb 13 2006-09-11 05:19:16Z prelude $
78
- </p>
79
-
80
- </div>
81
-
82
-
83
- </div>
84
-
85
- <div id="method-list">
86
- <h3 class="section-bar">Methods</h3>
87
-
88
- <div class="name-list">
89
- <a href="#M000015">&lt;&lt;</a>&nbsp;&nbsp;
90
- <a href="#M000014">bind</a>&nbsp;&nbsp;
91
- <a href="#M000012">empty</a>&nbsp;&nbsp;
92
- <a href="#M000013">join</a>&nbsp;&nbsp;
93
- <a href="#M000011">unwrap</a>&nbsp;&nbsp;
94
- <a href="#M000010">wrap</a>&nbsp;&nbsp;
95
- </div>
96
- </div>
97
-
98
- </div>
99
-
100
-
101
- <!-- if includes -->
102
-
103
- <div id="section">
104
-
105
-
106
- <div id="constants-list">
107
- <h3 class="section-bar">Constants</h3>
108
-
109
- <div class="name-list">
110
- <table summary="Constants">
111
- <tr class="top-aligned-row context-row">
112
- <td class="context-item-name">State</td>
113
- <td>=</td>
114
- <td class="context-item-value">{}</td>
115
- </tr>
116
- </table>
117
- </div>
118
- </div>
119
-
120
-
121
-
122
-
123
-
124
-
125
- <!-- if method_list -->
126
- <div id="methods">
127
- <h3 class="section-bar">Public Class methods</h3>
128
-
129
- <div id="method-M000013" class="method-detail">
130
- <a name="M000013"></a>
131
-
132
- <div class="method-heading">
133
- <a href="#M000013" class="method-signature">
134
- <span class="method-name">join</span><span class="method-args">(arr)</span>
135
- </a>
136
- </div>
137
-
138
- <div class="method-description">
139
- <p><a class="source-toggle" href="#"
140
- onclick="toggleCode('M000013-source');return false;">[Source]</a></p>
141
- <div class="method-source-code" id="M000013-source">
142
- <pre>
143
- <span class="ruby-comment cmt"># File lib/prelude/monad.rb, line 45</span>
144
- 45: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">Monad</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">arr</span>)
145
- 46: <span class="ruby-identifier">r</span> = []
146
- 47: <span class="ruby-identifier">arr</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">push</span> <span class="ruby-operator">*</span><span class="ruby-identifier">a</span>}
147
- 48: <span class="ruby-identifier">r</span>
148
- 49: <span class="ruby-keyword kw">end</span>
149
- </pre>
150
- </div>
151
- </div>
152
- </div>
153
-
154
- <h3 class="section-bar">Public Instance methods</h3>
155
-
156
- <div id="method-M000015" class="method-detail">
157
- <a name="M000015"></a>
158
-
159
- <div class="method-heading">
160
- <span class="method-name">&lt;&lt;</span><span class="method-args">(f=nil)</span>
161
- </div>
162
-
163
- <div class="method-description">
164
- <p>
165
- Alias for <a href="Monad.html#M000014">bind</a>
166
- </p>
167
- </div>
168
- </div>
169
-
170
- <div id="method-M000014" class="method-detail">
171
- <a name="M000014"></a>
172
-
173
- <div class="method-heading">
174
- <a href="#M000014" class="method-signature">
175
- <span class="method-name">bind</span><span class="method-args">(f=nil)</span>
176
- </a>
177
- </div>
178
-
179
- <div class="method-description">
180
- <p><a class="source-toggle" href="#"
181
- onclick="toggleCode('M000014-source');return false;">[Source]</a></p>
182
- <div class="method-source-code" id="M000014-source">
183
- <pre>
184
- <span class="ruby-comment cmt"># File lib/prelude/monad.rb, line 51</span>
185
- 51: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">bind</span>(<span class="ruby-identifier">f</span>=<span class="ruby-keyword kw">nil</span>)
186
- 52: <span class="ruby-keyword kw">case</span>
187
- 53: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Symbol</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Method</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Proc</span>) <span class="ruby-operator">:</span>
188
- 54: <span class="ruby-constant">State</span>[<span class="ruby-identifier">object_id</span>] = <span class="ruby-identifier">f</span>.<span class="ruby-identifier">to_proc</span>.<span class="ruby-identifier">call</span>(<span class="ruby-constant">State</span>[<span class="ruby-identifier">object_id</span>])
189
- 55: <span class="ruby-keyword kw">self</span>
190
- 56:
191
- 57: <span class="ruby-comment cmt"># when f.kind_of?(Proc) :</span>
192
- 58: <span class="ruby-comment cmt"># State[object_id] = f.call(State[object_id])</span>
193
- 59: <span class="ruby-comment cmt"># self</span>
194
- 60:
195
- 61: <span class="ruby-keyword kw">else</span>
196
- 62: <span class="ruby-identifier">f</span>
197
- 63: <span class="ruby-keyword kw">end</span> <span class="ruby-comment cmt"># case</span>
198
- 64: <span class="ruby-keyword kw">end</span>
199
- </pre>
200
- </div>
201
- </div>
202
- </div>
203
-
204
- <div id="method-M000012" class="method-detail">
205
- <a name="M000012"></a>
206
-
207
- <div class="method-heading">
208
- <a href="#M000012" class="method-signature">
209
- <span class="method-name">empty</span><span class="method-args">()</span>
210
- </a>
211
- </div>
212
-
213
- <div class="method-description">
214
- <p><a class="source-toggle" href="#"
215
- onclick="toggleCode('M000012-source');return false;">[Source]</a></p>
216
- <div class="method-source-code" id="M000012-source">
217
- <pre>
218
- <span class="ruby-comment cmt"># File lib/prelude/monad.rb, line 40</span>
219
- 40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">empty</span>
220
- 41: <span class="ruby-constant">State</span>[<span class="ruby-identifier">object_id</span>] = <span class="ruby-keyword kw">nil</span>
221
- 42: <span class="ruby-keyword kw">self</span>
222
- 43: <span class="ruby-keyword kw">end</span>
223
- </pre>
224
- </div>
225
- </div>
226
- </div>
227
-
228
- <div id="method-M000011" class="method-detail">
229
- <a name="M000011"></a>
230
-
231
- <div class="method-heading">
232
- <a href="#M000011" class="method-signature">
233
- <span class="method-name">unwrap</span><span class="method-args">()</span>
234
- </a>
235
- </div>
236
-
237
- <div class="method-description">
238
- <p><a class="source-toggle" href="#"
239
- onclick="toggleCode('M000011-source');return false;">[Source]</a></p>
240
- <div class="method-source-code" id="M000011-source">
241
- <pre>
242
- <span class="ruby-comment cmt"># File lib/prelude/monad.rb, line 36</span>
243
- 36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unwrap</span>
244
- 37: <span class="ruby-constant">State</span>[<span class="ruby-identifier">object_id</span>]
245
- 38: <span class="ruby-keyword kw">end</span>
246
- </pre>
247
- </div>
248
- </div>
249
- </div>
250
-
251
- <div id="method-M000010" class="method-detail">
252
- <a name="M000010"></a>
253
-
254
- <div class="method-heading">
255
- <a href="#M000010" class="method-signature">
256
- <span class="method-name">wrap</span><span class="method-args">()</span>
257
- </a>
258
- </div>
259
-
260
- <div class="method-description">
261
- <p><a class="source-toggle" href="#"
262
- onclick="toggleCode('M000010-source');return false;">[Source]</a></p>
263
- <div class="method-source-code" id="M000010-source">
264
- <pre>
265
- <span class="ruby-comment cmt"># File lib/prelude/monad.rb, line 31</span>
266
- 31: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">wrap</span>
267
- 32: <span class="ruby-constant">State</span>[<span class="ruby-identifier">object_id</span>] = <span class="ruby-keyword kw">self</span>
268
- 33: <span class="ruby-keyword kw">self</span>
269
- 34: <span class="ruby-keyword kw">end</span>
270
- </pre>
271
- </div>
272
- </div>
273
- </div>
274
-
275
-
276
- </div>
277
-
278
-
279
- </div>
280
-
281
-
282
- </body>
283
- </html>
@@ -1,217 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: Prelude::Tuple</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Prelude::Tuple</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../files/lib/prelude/tuple_rb.html">
59
- lib/prelude/tuple.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- Array
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- $Id: tuple.rb 7 2006-09-06 17:03:26Z prelude $
84
- </p>
85
- <p>
86
- The <a href="Tuple.html">Tuple</a>&#8217;s being an Array should be
87
- considered an implementation inheritance.
88
- </p>
89
-
90
- </div>
91
-
92
-
93
- </div>
94
-
95
- <div id="method-list">
96
- <h3 class="section-bar">Methods</h3>
97
-
98
- <div class="name-list">
99
- <a href="#M000110">fst</a>&nbsp;&nbsp;
100
- <a href="#M000109">new</a>&nbsp;&nbsp;
101
- <a href="#M000111">snd</a>&nbsp;&nbsp;
102
- </div>
103
- </div>
104
-
105
- </div>
106
-
107
-
108
- <!-- if includes -->
109
-
110
- <div id="section">
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
- <!-- if method_list -->
120
- <div id="methods">
121
- <h3 class="section-bar">Public Class methods</h3>
122
-
123
- <div id="method-M000109" class="method-detail">
124
- <a name="M000109"></a>
125
-
126
- <div class="method-heading">
127
- <a href="#M000109" class="method-signature">
128
- <span class="method-name">new</span><span class="method-args">(*args)</span>
129
- </a>
130
- </div>
131
-
132
- <div class="method-description">
133
- <p><a class="source-toggle" href="#"
134
- onclick="toggleCode('M000109-source');return false;">[Source]</a></p>
135
- <div class="method-source-code" id="M000109-source">
136
- <pre>
137
- <span class="ruby-comment cmt"># File lib/prelude/tuple.rb, line 31</span>
138
- 31: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
139
- 32: <span class="ruby-keyword kw">case</span>
140
- 33: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">:</span>
141
- 34: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>] = <span class="ruby-keyword kw">self</span>[<span class="ruby-value">1</span>] = <span class="ruby-keyword kw">nil</span>
142
- 35: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">:</span>
143
- 36: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>]
144
- 37: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>][<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
145
- 38: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span>
146
- 39: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>]
147
- 40: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">1</span>] = <span class="ruby-keyword kw">nil</span>
148
- 41: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">2</span> <span class="ruby-operator">:</span>
149
- 42: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>]
150
- 43: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">1</span>]
151
- 44: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">2</span> <span class="ruby-operator">:</span>
152
- 45: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>]
153
- 46: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">args</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
154
- 47: <span class="ruby-keyword kw">end</span> <span class="ruby-comment cmt"># case</span>
155
- 48: <span class="ruby-keyword kw">end</span>
156
- </pre>
157
- </div>
158
- </div>
159
- </div>
160
-
161
- <h3 class="section-bar">Public Instance methods</h3>
162
-
163
- <div id="method-M000110" class="method-detail">
164
- <a name="M000110"></a>
165
-
166
- <div class="method-heading">
167
- <a href="#M000110" class="method-signature">
168
- <span class="method-name">fst</span><span class="method-args">()</span>
169
- </a>
170
- </div>
171
-
172
- <div class="method-description">
173
- <p><a class="source-toggle" href="#"
174
- onclick="toggleCode('M000110-source');return false;">[Source]</a></p>
175
- <div class="method-source-code" id="M000110-source">
176
- <pre>
177
- <span class="ruby-comment cmt"># File lib/prelude/tuple.rb, line 50</span>
178
- 50: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">fst</span>
179
- 51: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>]
180
- 52: <span class="ruby-keyword kw">end</span>
181
- </pre>
182
- </div>
183
- </div>
184
- </div>
185
-
186
- <div id="method-M000111" class="method-detail">
187
- <a name="M000111"></a>
188
-
189
- <div class="method-heading">
190
- <a href="#M000111" class="method-signature">
191
- <span class="method-name">snd</span><span class="method-args">()</span>
192
- </a>
193
- </div>
194
-
195
- <div class="method-description">
196
- <p><a class="source-toggle" href="#"
197
- onclick="toggleCode('M000111-source');return false;">[Source]</a></p>
198
- <div class="method-source-code" id="M000111-source">
199
- <pre>
200
- <span class="ruby-comment cmt"># File lib/prelude/tuple.rb, line 54</span>
201
- 54: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">snd</span>
202
- 55: <span class="ruby-keyword kw">self</span>[<span class="ruby-value">1</span>]
203
- 56: <span class="ruby-keyword kw">end</span>
204
- </pre>
205
- </div>
206
- </div>
207
- </div>
208
-
209
-
210
- </div>
211
-
212
-
213
- </div>
214
-
215
-
216
- </body>
217
- </html>