autoc 1.1 → 1.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/.yardopts +3 -1
- data/CHANGES +15 -0
- data/README +2 -0
- data/doc/AutoC.html +84 -14
- data/doc/AutoC/Code.html +31 -31
- data/doc/AutoC/Collection.html +250 -182
- data/doc/AutoC/HashMap.html +565 -245
- data/doc/AutoC/HashSet.html +266 -264
- data/doc/AutoC/List.html +317 -249
- data/doc/AutoC/Module.html +66 -72
- data/doc/AutoC/Module/File.html +25 -25
- data/doc/AutoC/Module/Header.html +25 -25
- data/doc/AutoC/Module/Source.html +43 -43
- data/doc/AutoC/Priority.html +3 -3
- data/doc/AutoC/Queue.html +352 -286
- data/doc/AutoC/Reference.html +578 -0
- data/doc/AutoC/Type.html +941 -131
- data/doc/AutoC/UserDefinedType.html +64 -313
- data/doc/AutoC/Vector.html +336 -306
- data/doc/_index.html +22 -4
- data/doc/class_list.html +6 -2
- data/doc/file.CHANGES.html +102 -0
- data/doc/file.README.html +7 -4
- data/doc/file_list.html +8 -1
- data/doc/frames.html +1 -1
- data/doc/index.html +7 -4
- data/doc/js/full_list.js +4 -1
- data/doc/method_list.html +236 -118
- data/doc/top-level-namespace.html +3 -3
- data/lib/autoc.rb +3 -3
- data/lib/autoc/code.rb +11 -5
- data/lib/autoc/collection.rb +62 -56
- data/lib/autoc/collection/hash_map.rb +83 -63
- data/lib/autoc/collection/hash_set.rb +74 -64
- data/lib/autoc/collection/list.rb +48 -41
- data/lib/autoc/collection/queue.rb +53 -47
- data/lib/autoc/collection/vector.rb +63 -42
- data/lib/autoc/type.rb +326 -61
- data/test/test.c +120 -0
- data/test/test.rb +16 -2
- data/test/test_auto.c +1683 -987
- data/test/test_auto.h +491 -176
- metadata +22 -19
data/doc/AutoC/HashMap.html
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
<title>
|
7
7
|
Class: AutoC::HashMap
|
8
8
|
|
9
|
-
— Documentation by YARD 0.8.7.
|
9
|
+
— Documentation by YARD 0.8.7.6
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
@@ -111,134 +111,131 @@
|
|
111
111
|
<p>HashSet is a hash-based unordered random access container holding unique keys with each key having an element bound to it.</p>
|
112
112
|
</div>
|
113
113
|
<div class="paragraph">
|
114
|
-
<p>The collection’s C++ counterpart is
|
114
|
+
<p>The collection’s C++ counterpart is std::unordered_map<> template class.</p>
|
115
115
|
</div>
|
116
116
|
<div class="sect1">
|
117
117
|
<h2 id="_generated_c_interface">Generated C interface</h2>
|
118
118
|
<div class="sectionbody">
|
119
119
|
<div class="sect2">
|
120
120
|
<h3 id="_collection_management">Collection management</h3>
|
121
|
-
<table class="tableblock frame-all grid-all
|
121
|
+
<table class="tableblock frame-all grid-all spread">
|
122
122
|
<colgroup>
|
123
|
-
<col style="width:50%;">
|
124
|
-
<col style="width:50%;">
|
123
|
+
<col style="width: 50%;">
|
124
|
+
<col style="width: 50%;">
|
125
125
|
</colgroup>
|
126
126
|
<tbody>
|
127
127
|
<tr>
|
128
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Copy(<strong><em>Type</em></strong> *
|
129
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a new map
|
130
|
-
A copy operation is performed on all keys and values in
|
131
|
-
</p><p class="tableblock">NOTE: Previous contents of
|
128
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Copy(<strong><em>Type</em></strong> * dst, <strong><em>Type</em></strong> * src)</p></td>
|
129
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a new map dst filled with the contents of src.
|
130
|
+
A copy operation is performed on all keys and values in src.
|
131
|
+
</p><p class="tableblock">NOTE: Previous contents of dst is overwritten.</p></td>
|
132
132
|
</tr>
|
133
133
|
<tr>
|
134
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Ctor(<strong><em>Type</em></strong> *
|
135
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a new empty map
|
136
|
-
</p><p class="tableblock">NOTE: Previous contents of
|
134
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Ctor(<strong><em>Type</em></strong> * self)</p></td>
|
135
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a new empty map self.
|
136
|
+
</p><p class="tableblock">NOTE: Previous contents of self is overwritten.</p></td>
|
137
137
|
</tr>
|
138
138
|
<tr>
|
139
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Dtor(<strong><em>Type</em></strong> *
|
140
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Destroy map
|
139
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Dtor(<strong><em>Type</em></strong> * self)</p></td>
|
140
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Destroy map self.
|
141
141
|
Stored keys and values are destroyed as well by calling the respective destructors.</p></td>
|
142
142
|
</tr>
|
143
143
|
<tr>
|
144
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Equal(<strong><em>Type</em></strong> *
|
145
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return non-zero value if maps
|
144
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Equal(<strong><em>Type</em></strong> * lt, <strong><em>Type</em></strong> * rt)</p></td>
|
145
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return non-zero value if maps lt and rt are considered equal by contents and zero value otherwise.</p></td>
|
146
146
|
</tr>
|
147
147
|
<tr>
|
148
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>size_t</em></strong> <sub>type</sub>Identify(<strong><em>Type</em></strong> *
|
149
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return hash code for map
|
148
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>size_t</em></strong> <sub>type</sub>Identify(<strong><em>Type</em></strong> * self)</p></td>
|
149
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return hash code for map self.</p></td>
|
150
150
|
</tr>
|
151
151
|
</tbody>
|
152
152
|
</table>
|
153
|
-
|
154
153
|
</div>
|
155
154
|
<div class="sect2">
|
156
155
|
<h3 id="_basic_operations">Basic operations</h3>
|
157
|
-
<table class="tableblock frame-all grid-all
|
156
|
+
<table class="tableblock frame-all grid-all spread">
|
158
157
|
<colgroup>
|
159
|
-
<col style="width:50%;">
|
160
|
-
<col style="width:50%;">
|
158
|
+
<col style="width: 50%;">
|
159
|
+
<col style="width: 50%;">
|
161
160
|
</colgroup>
|
162
161
|
<tbody>
|
163
162
|
<tr>
|
164
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>ContainsKey(<strong><em>Type</em></strong> *
|
165
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return non-zero value if map
|
163
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>ContainsKey(<strong><em>Type</em></strong> * self, <strong><em>K</em></strong> key)</p></td>
|
164
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return non-zero value if map self contains an entry with a key considered equal to the key key and zero value otherwise.</p></td>
|
166
165
|
</tr>
|
167
166
|
<tr>
|
168
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Empty(<strong><em>Type</em></strong> *
|
169
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return non-zero value if map
|
167
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Empty(<strong><em>Type</em></strong> * self)</p></td>
|
168
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return non-zero value if map self contains no entries and zero value otherwise.</p></td>
|
170
169
|
</tr>
|
171
170
|
<tr>
|
172
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>E</em></strong> <sub>type</sub>Get(<strong><em>Type</em></strong> *
|
173
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return a <em>copy</em> of the element in
|
174
|
-
</p><p class="tableblock">WARNING:
|
171
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>E</em></strong> <sub>type</sub>Get(<strong><em>Type</em></strong> * self, <strong><em>K</em></strong> key)</p></td>
|
172
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return a <em>copy</em> of the element in self bound to a key which is considered equal to the key key.
|
173
|
+
</p><p class="tableblock">WARNING: self <strong>must</strong> contain such key otherwise the behavior is undefined. See <sub>type</sub>Contains().</p></td>
|
175
174
|
</tr>
|
176
175
|
<tr>
|
177
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Purge(<strong><em>Type</em></strong> *
|
178
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Remove and destroy all keys and elements stored in
|
176
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>type</sub>Purge(<strong><em>Type</em></strong> * self)</p></td>
|
177
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Remove and destroy all keys and elements stored in self.</p></td>
|
179
178
|
</tr>
|
180
179
|
<tr>
|
181
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Put(<strong><em>Type</em></strong> *
|
182
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Put a <em>copy</em> of the element
|
180
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Put(<strong><em>Type</em></strong> * self, <strong><em>K</em></strong> key, <strong><em>E</em></strong> value)</p></td>
|
181
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Put a <em>copy</em> of the element value bound to a <em>copy</em> of the key key into self <strong>only if</strong> there is no such key in self which is considered equal to key.
|
183
182
|
</p><p class="tableblock">Return non-zero value on successful put and zero value otherwise.</p></td>
|
184
183
|
</tr>
|
185
184
|
<tr>
|
186
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Replace(<strong><em>Type</em></strong> *
|
187
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">If
|
185
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Replace(<strong><em>Type</em></strong> * self, <strong><em>K</em></strong> key, <strong><em>E</em></strong> value)</p></td>
|
186
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">If self contains a key which is considered equal to the key key,
|
188
187
|
remove and destroy that key along with an element bound to it
|
189
|
-
and put a new pair built of the <em>copies</em> of
|
190
|
-
otherwise simply put a new key/element pair into
|
188
|
+
and put a new pair built of the <em>copies</em> of key and value,
|
189
|
+
otherwise simply put a new key/element pair into self in the way of <sub>type</sub>Put().
|
191
190
|
</p><p class="tableblock">Return non-zero value if the replacement was actually performed and zero value otherwise.</p></td>
|
192
191
|
</tr>
|
193
192
|
<tr>
|
194
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Remove(<strong><em>Type</em></strong> *
|
195
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Remove and destroy a key which is considered equal to the key
|
193
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>type</sub>Remove(<strong><em>Type</em></strong> * self, <strong><em>K</em></strong> key)</p></td>
|
194
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Remove and destroy a key which is considered equal to the key key.
|
196
195
|
Destroy an element bound to that key.
|
197
196
|
</p><p class="tableblock">Return non-zero value on successful key/element pair removal and zero value otherwise.</p></td>
|
198
197
|
</tr>
|
199
198
|
<tr>
|
200
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>size_t</em></strong> <sub>type</sub>Size(<strong><em>Type</em></strong> *
|
201
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return number of key/element pairs stored in
|
199
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>size_t</em></strong> <sub>type</sub>Size(<strong><em>Type</em></strong> * self)</p></td>
|
200
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return number of key/element pairs stored in self.</p></td>
|
202
201
|
</tr>
|
203
202
|
</tbody>
|
204
203
|
</table>
|
205
|
-
|
206
204
|
</div>
|
207
205
|
<div class="sect2">
|
208
206
|
<h3 id="_iteration">Iteration</h3>
|
209
|
-
<table class="tableblock frame-all grid-all
|
207
|
+
<table class="tableblock frame-all grid-all spread">
|
210
208
|
<colgroup>
|
211
|
-
<col style="width:50%;">
|
212
|
-
<col style="width:50%;">
|
209
|
+
<col style="width: 50%;">
|
210
|
+
<col style="width: 50%;">
|
213
211
|
</colgroup>
|
214
212
|
<tbody>
|
215
213
|
<tr>
|
216
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>it</sub>Ctor(<strong><em>IteratorType</em></strong> *
|
217
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a new iterator
|
214
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>void</em></strong> <sub>it</sub>Ctor(<strong><em>IteratorType</em></strong> * it, <strong><em>Type</em></strong> * self)</p></td>
|
215
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a new iterator it on map self.
|
218
216
|
</p><p class="tableblock">NOTE: As the map is an unordered sequence, the traversal order is unspecified.
|
219
|
-
</p><p class="tableblock">NOTE: Previous contents of
|
217
|
+
</p><p class="tableblock">NOTE: Previous contents of it is overwritten.</p></td>
|
220
218
|
</tr>
|
221
219
|
<tr>
|
222
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>it</sub>Move(<strong><em>IteratorType</em></strong> *
|
223
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Advance iterator position of
|
220
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>int</em></strong> <sub>it</sub>Move(<strong><em>IteratorType</em></strong> * it)</p></td>
|
221
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Advance iterator position of it <strong>and</strong> return non-zero value if new position is valid and zero value otherwise.</p></td>
|
224
222
|
</tr>
|
225
223
|
<tr>
|
226
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>K</em></strong> <sub>it</sub>GetKey(<strong><em>IteratorType</em></strong> *
|
227
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return a <em>copy</em> of the key from a key/value pair pointed to by the iterator
|
224
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>K</em></strong> <sub>it</sub>GetKey(<strong><em>IteratorType</em></strong> * it)</p></td>
|
225
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return a <em>copy</em> of the key from a key/value pair pointed to by the iterator it.
|
228
226
|
</p><p class="tableblock">WARNING: current position <strong>must</strong> be valid otherwise the behavior is undefined. See <sub>it</sub>Move().</p></td>
|
229
227
|
</tr>
|
230
228
|
<tr>
|
231
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>E</em></strong> <sub>it</sub>GetElement(<strong><em>IteratorType</em></strong> *
|
232
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock">Return a <em>copy</em> of the element from a key/element pair pointed to by the iterator
|
229
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>E</em></strong> <sub>it</sub>GetElement(<strong><em>IteratorType</em></strong> * it)</p></td>
|
230
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock">Return a <em>copy</em> of the element from a key/element pair pointed to by the iterator it.
|
233
231
|
</p><p class="tableblock">WARNING: current position <strong>must</strong> be valid otherwise the behavior is undefined. See <sub>it</sub>Move().</p></td>
|
234
232
|
</tr>
|
235
233
|
<tr>
|
236
|
-
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>E</em></strong> <sub>it</sub>Get(<strong><em>IteratorType</em></strong> *
|
234
|
+
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong><em>E</em></strong> <sub>it</sub>Get(<strong><em>IteratorType</em></strong> * it)</p></td>
|
237
235
|
<td class="tableblock halign-left valign-top"><p class="tableblock">Alias for <sub>it</sub>GetElement().</p></td>
|
238
236
|
</tr>
|
239
237
|
</tbody>
|
240
238
|
</table>
|
241
|
-
|
242
239
|
</div>
|
243
240
|
</div>
|
244
241
|
</div>
|
@@ -294,12 +291,12 @@ Destroy an element bound to that key.
|
|
294
291
|
|
295
292
|
|
296
293
|
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Collection.html" title="AutoC::Collection (class)">Collection</a></span></h3>
|
297
|
-
<p class="inherited"><span class='object_link'><a href="Collection.html#element-instance_method" title="AutoC::Collection#element (method)">#element</a></span></p>
|
294
|
+
<p class="inherited"><span class='object_link'><a href="Collection.html#element-instance_method" title="AutoC::Collection#element (method)">#element</a></span>, <span class='object_link'><a href="Collection.html#it_ref-instance_method" title="AutoC::Collection#it_ref (method)">#it_ref</a></span></p>
|
298
295
|
|
299
296
|
|
300
297
|
|
301
298
|
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Type.html" title="AutoC::Type (class)">Type</a></span></h3>
|
302
|
-
<p class="inherited"><span class='object_link'><a href="Type.html#type-instance_method" title="AutoC::Type#type (method)">#type</a></span></p>
|
299
|
+
<p class="inherited"><span class='object_link'><a href="Type.html#type-instance_method" title="AutoC::Type#type (method)">#type</a></span>, <span class='object_link'><a href="Type.html#type_ref-instance_method" title="AutoC::Type#type_ref (method)">#type_ref</a></span></p>
|
303
300
|
|
304
301
|
|
305
302
|
|
@@ -313,6 +310,74 @@ Destroy an element bound to that key.
|
|
313
310
|
<li class="public ">
|
314
311
|
<span class="summary_signature">
|
315
312
|
|
313
|
+
<a href="#%3D%3D-instance_method" title="#== (instance method)">- (Object) <strong>==</strong>(other) </a>
|
314
|
+
|
315
|
+
|
316
|
+
|
317
|
+
(also: #eql?)
|
318
|
+
|
319
|
+
</span>
|
320
|
+
|
321
|
+
|
322
|
+
|
323
|
+
|
324
|
+
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
330
|
+
|
331
|
+
</li>
|
332
|
+
|
333
|
+
|
334
|
+
<li class="public ">
|
335
|
+
<span class="summary_signature">
|
336
|
+
|
337
|
+
<a href="#comparable%3F-instance_method" title="#comparable? (instance method)">- (Boolean) <strong>comparable?</strong> </a>
|
338
|
+
|
339
|
+
|
340
|
+
|
341
|
+
</span>
|
342
|
+
|
343
|
+
|
344
|
+
|
345
|
+
|
346
|
+
|
347
|
+
|
348
|
+
|
349
|
+
|
350
|
+
|
351
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
352
|
+
|
353
|
+
</li>
|
354
|
+
|
355
|
+
|
356
|
+
<li class="public ">
|
357
|
+
<span class="summary_signature">
|
358
|
+
|
359
|
+
<a href="#copyable%3F-instance_method" title="#copyable? (instance method)">- (Boolean) <strong>copyable?</strong> </a>
|
360
|
+
|
361
|
+
|
362
|
+
|
363
|
+
</span>
|
364
|
+
|
365
|
+
|
366
|
+
|
367
|
+
|
368
|
+
|
369
|
+
|
370
|
+
|
371
|
+
|
372
|
+
|
373
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
374
|
+
|
375
|
+
</li>
|
376
|
+
|
377
|
+
|
378
|
+
<li class="public ">
|
379
|
+
<span class="summary_signature">
|
380
|
+
|
316
381
|
<a href="#entities-instance_method" title="#entities (instance method)">- (Object) <strong>entities</strong> </a>
|
317
382
|
|
318
383
|
|
@@ -327,6 +392,50 @@ Destroy an element bound to that key.
|
|
327
392
|
|
328
393
|
|
329
394
|
|
395
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
396
|
+
|
397
|
+
</li>
|
398
|
+
|
399
|
+
|
400
|
+
<li class="public ">
|
401
|
+
<span class="summary_signature">
|
402
|
+
|
403
|
+
<a href="#hash-instance_method" title="#hash (instance method)">- (Object) <strong>hash</strong> </a>
|
404
|
+
|
405
|
+
|
406
|
+
|
407
|
+
</span>
|
408
|
+
|
409
|
+
|
410
|
+
|
411
|
+
|
412
|
+
|
413
|
+
|
414
|
+
|
415
|
+
|
416
|
+
|
417
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
418
|
+
|
419
|
+
</li>
|
420
|
+
|
421
|
+
|
422
|
+
<li class="public ">
|
423
|
+
<span class="summary_signature">
|
424
|
+
|
425
|
+
<a href="#hashable%3F-instance_method" title="#hashable? (instance method)">- (Boolean) <strong>hashable?</strong> </a>
|
426
|
+
|
427
|
+
|
428
|
+
|
429
|
+
</span>
|
430
|
+
|
431
|
+
|
432
|
+
|
433
|
+
|
434
|
+
|
435
|
+
|
436
|
+
|
437
|
+
|
438
|
+
|
330
439
|
<span class="summary_desc"><div class='inline'></div></span>
|
331
440
|
|
332
441
|
</li>
|
@@ -361,7 +470,7 @@ Destroy an element bound to that key.
|
|
361
470
|
<li class="public ">
|
362
471
|
<span class="summary_signature">
|
363
472
|
|
364
|
-
<a href="#
|
473
|
+
<a href="#write_impls-instance_method" title="#write_impls (instance method)">- (Object) <strong>write_impls</strong>(stream, define) </a>
|
365
474
|
|
366
475
|
|
367
476
|
|
@@ -383,7 +492,7 @@ Destroy an element bound to that key.
|
|
383
492
|
<li class="public ">
|
384
493
|
<span class="summary_signature">
|
385
494
|
|
386
|
-
<a href="#
|
495
|
+
<a href="#write_intf_decls-instance_method" title="#write_intf_decls (instance method)">- (Object) <strong>write_intf_decls</strong>(stream, declare, define) </a>
|
387
496
|
|
388
497
|
|
389
498
|
|
@@ -405,7 +514,7 @@ Destroy an element bound to that key.
|
|
405
514
|
<li class="public ">
|
406
515
|
<span class="summary_signature">
|
407
516
|
|
408
|
-
<a href="#
|
517
|
+
<a href="#write_intf_types-instance_method" title="#write_intf_types (instance method)">- (Object) <strong>write_intf_types</strong>(stream) </a>
|
409
518
|
|
410
519
|
|
411
520
|
|
@@ -436,11 +545,6 @@ Destroy an element bound to that key.
|
|
436
545
|
|
437
546
|
|
438
547
|
|
439
|
-
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Collection.html" title="AutoC::Collection (class)">Collection</a></span></h3>
|
440
|
-
<p class="inherited"><span class='object_link'><a href="Collection.html#coerce-class_method" title="AutoC::Collection.coerce (method)">coerce</a></span>, <span class='object_link'><a href="Collection.html#copy-instance_method" title="AutoC::Collection#copy (method)">#copy</a></span>, <span class='object_link'><a href="Collection.html#ctor-instance_method" title="AutoC::Collection#ctor (method)">#ctor</a></span>, <span class='object_link'><a href="Collection.html#dtor-instance_method" title="AutoC::Collection#dtor (method)">#dtor</a></span>, <span class='object_link'><a href="Collection.html#equal-instance_method" title="AutoC::Collection#equal (method)">#equal</a></span>, <span class='object_link'><a href="Collection.html#identify-instance_method" title="AutoC::Collection#identify (method)">#identify</a></span>, <span class='object_link'><a href="Collection.html#less-instance_method" title="AutoC::Collection#less (method)">#less</a></span></p>
|
441
|
-
|
442
|
-
|
443
|
-
|
444
548
|
|
445
549
|
|
446
550
|
|
@@ -448,7 +552,7 @@ Destroy an element bound to that key.
|
|
448
552
|
|
449
553
|
|
450
554
|
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Type.html" title="AutoC::Type (class)">Type</a></span></h3>
|
451
|
-
<p class="inherited"><span class='object_link'><a href="Type.html#abort-instance_method" title="AutoC::Type#abort (method)">#abort</a></span>, <span class='object_link'><a href="Type.html#assert-instance_method" title="AutoC::Type#assert (method)">#assert</a></span>, <span class='object_link'><a href="Type.html#calloc-instance_method" title="AutoC::Type#calloc (method)">#calloc</a></span>, <span class='object_link'><a href="Type.html#extern-instance_method" title="AutoC::Type#extern (method)">#extern</a></span>, <span class='object_link'><a href="Type.html#free-instance_method" title="AutoC::Type#free (method)">#free</a></span>, <span class='object_link'><a href="Type.html#inline-instance_method" title="AutoC::Type#inline (method)">#inline</a></span>, <span class='object_link'><a href="Type.html#malloc-instance_method" title="AutoC::Type#malloc (method)">#malloc</a></span>, <span class='object_link'><a href="Type.html#method_missing-instance_method" title="AutoC::Type#method_missing (method)">#method_missing</a></span>, <span class='object_link'><a href="Type.html#static-instance_method" title="AutoC::Type#static (method)">#static</a></span>, <span class='object_link'><a href="Type.html#write_decls-instance_method" title="AutoC::Type#write_decls (method)">#write_decls</a></span>, <span class='object_link'><a href="Type.html#write_defs-instance_method" title="AutoC::Type#write_defs (method)">#write_defs</a></span>, <span class='object_link'><a href="Type.html#write_intf-instance_method" title="AutoC::Type#write_intf (method)">#write_intf</a></span></p>
|
555
|
+
<p class="inherited"><span class='object_link'><a href="Type.html#abort-instance_method" title="AutoC::Type#abort (method)">#abort</a></span>, <span class='object_link'><a href="Type.html#assert-instance_method" title="AutoC::Type#assert (method)">#assert</a></span>, <span class='object_link'><a href="Type.html#calloc-instance_method" title="AutoC::Type#calloc (method)">#calloc</a></span>, <span class='object_link'><a href="Type.html#coerce-class_method" title="AutoC::Type.coerce (method)">coerce</a></span>, <span class='object_link'><a href="Type.html#constructible%3F-instance_method" title="AutoC::Type#constructible? (method)">#constructible?</a></span>, <span class='object_link'><a href="Type.html#destructible%3F-instance_method" title="AutoC::Type#destructible? (method)">#destructible?</a></span>, <span class='object_link'><a href="Type.html#extern-instance_method" title="AutoC::Type#extern (method)">#extern</a></span>, <span class='object_link'><a href="Type.html#free-instance_method" title="AutoC::Type#free (method)">#free</a></span>, <span class='object_link'><a href="Type.html#inline-instance_method" title="AutoC::Type#inline (method)">#inline</a></span>, <span class='object_link'><a href="Type.html#malloc-instance_method" title="AutoC::Type#malloc (method)">#malloc</a></span>, <span class='object_link'><a href="Type.html#method_missing-instance_method" title="AutoC::Type#method_missing (method)">#method_missing</a></span>, <span class='object_link'><a href="Type.html#orderable%3F-instance_method" title="AutoC::Type#orderable? (method)">#orderable?</a></span>, <span class='object_link'><a href="Type.html#prefix-instance_method" title="AutoC::Type#prefix (method)">#prefix</a></span>, <span class='object_link'><a href="Type.html#private%3F-instance_method" title="AutoC::Type#private? (method)">#private?</a></span>, <span class='object_link'><a href="Type.html#public%3F-instance_method" title="AutoC::Type#public? (method)">#public?</a></span>, <span class='object_link'><a href="Type.html#static-instance_method" title="AutoC::Type#static (method)">#static</a></span>, <span class='object_link'><a href="Type.html#static%3F-instance_method" title="AutoC::Type#static? (method)">#static?</a></span>, <span class='object_link'><a href="Type.html#write_decls-instance_method" title="AutoC::Type#write_decls (method)">#write_decls</a></span>, <span class='object_link'><a href="Type.html#write_defs-instance_method" title="AutoC::Type#write_defs (method)">#write_defs</a></span>, <span class='object_link'><a href="Type.html#write_intf-instance_method" title="AutoC::Type#write_intf (method)">#write_intf</a></span></p>
|
452
556
|
|
453
557
|
|
454
558
|
|
@@ -489,21 +593,27 @@ Destroy an element bound to that key.
|
|
489
593
|
<pre class="lines">
|
490
594
|
|
491
595
|
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
596
|
+
144
|
597
|
+
145
|
598
|
+
146
|
599
|
+
147
|
600
|
+
148
|
601
|
+
149
|
602
|
+
150
|
603
|
+
151
|
604
|
+
152</pre>
|
498
605
|
</td>
|
499
606
|
<td>
|
500
|
-
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line
|
607
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 144</span>
|
501
608
|
|
502
609
|
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_key_type'>key_type</span><span class='comma'>,</span> <span class='id identifier rubyid_value_type'>value_type</span><span class='comma'>,</span> <span class='id identifier rubyid_visibility'>visibility</span> <span class='op'>=</span> <span class='symbol'>:public</span><span class='rparen'>)</span>
|
503
610
|
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_value_type'>value_type</span><span class='comma'>,</span> <span class='id identifier rubyid_visibility'>visibility</span><span class='rparen'>)</span>
|
504
|
-
<span class='ivar'>@key</span> <span class='op'>=</span> <span class='const'>
|
611
|
+
<span class='ivar'>@key</span> <span class='op'>=</span> <span class='const'>Type</span><span class='period'>.</span><span class='id identifier rubyid_coerce'>coerce</span><span class='lparen'>(</span><span class='id identifier rubyid_key_type'>key_type</span><span class='rparen'>)</span>
|
505
612
|
<span class='ivar'>@entry</span> <span class='op'>=</span> <span class='const'>UserDefinedType</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:type</span> <span class='op'>=></span> <span class='id identifier rubyid_entry'>entry</span><span class='comma'>,</span> <span class='symbol'>:identify</span> <span class='op'>=></span> <span class='id identifier rubyid_entryIdentify'>entryIdentify</span><span class='comma'>,</span> <span class='symbol'>:equal</span> <span class='op'>=></span> <span class='id identifier rubyid_entryEqual'>entryEqual</span><span class='comma'>,</span> <span class='symbol'>:copy</span> <span class='op'>=></span> <span class='id identifier rubyid_entryCopy'>entryCopy</span><span class='comma'>,</span> <span class='symbol'>:dtor</span> <span class='op'>=></span> <span class='id identifier rubyid_entryDtor'>entryDtor</span><span class='rparen'>)</span>
|
506
613
|
<span class='ivar'>@set</span> <span class='op'>=</span> <span class='const'>HashSet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_set'>set</span><span class='comma'>,</span> <span class='ivar'>@entry</span><span class='comma'>,</span> <span class='symbol'>:static</span><span class='rparen'>)</span>
|
614
|
+
<span class='ivar'>@capability</span><span class='period'>.</span><span class='id identifier rubyid_subtract'>subtract</span> <span class='lbracket'>[</span><span class='symbol'>:orderable</span><span class='rbracket'>]</span>
|
615
|
+
<span class='id identifier rubyid_element_type_check'>element_type_check</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
|
616
|
+
<span class='id identifier rubyid_key_type_check'>key_type_check</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
|
507
617
|
<span class='kw'>end</span></pre>
|
508
618
|
</td>
|
509
619
|
</tr>
|
@@ -576,12 +686,16 @@ Destroy an element bound to that key.
|
|
576
686
|
|
577
687
|
|
578
688
|
<div class="method_details first">
|
579
|
-
<h3 class="signature first" id="
|
689
|
+
<h3 class="signature first" id="==-instance_method">
|
580
690
|
|
581
|
-
- (<tt>Object</tt>) <strong
|
691
|
+
- (<tt>Object</tt>) <strong>==</strong>(other)
|
582
692
|
|
583
693
|
|
584
694
|
|
695
|
+
<span class="aliases">Also known as:
|
696
|
+
<span class="names"><span id='eql?-instance_method'>eql?</span></span>
|
697
|
+
</span>
|
698
|
+
|
585
699
|
|
586
700
|
|
587
701
|
</h3><table class="source_code">
|
@@ -590,21 +704,117 @@ Destroy an element bound to that key.
|
|
590
704
|
<pre class="lines">
|
591
705
|
|
592
706
|
|
593
|
-
|
707
|
+
138</pre>
|
594
708
|
</td>
|
595
709
|
<td>
|
596
|
-
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line
|
710
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 138</span>
|
711
|
+
|
712
|
+
<span class='kw'>def</span> <span class='op'>==</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span> <span class='kw'>super</span> <span class='op'>&&</span> <span class='id identifier rubyid_key'>key</span> <span class='op'>==</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_key'>key</span> <span class='kw'>end</span></pre>
|
713
|
+
</td>
|
714
|
+
</tr>
|
715
|
+
</table>
|
716
|
+
</div>
|
717
|
+
|
718
|
+
<div class="method_details ">
|
719
|
+
<h3 class="signature " id="comparable?-instance_method">
|
720
|
+
|
721
|
+
- (<tt>Boolean</tt>) <strong>comparable?</strong>
|
722
|
+
|
723
|
+
|
724
|
+
|
725
|
+
|
726
|
+
|
727
|
+
</h3><div class="docstring">
|
728
|
+
<div class="discussion">
|
729
|
+
|
730
|
+
|
731
|
+
</div>
|
732
|
+
</div>
|
733
|
+
<div class="tags">
|
734
|
+
|
735
|
+
<p class="tag_title">Returns:</p>
|
736
|
+
<ul class="return">
|
737
|
+
|
738
|
+
<li>
|
739
|
+
|
740
|
+
|
741
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
742
|
+
|
743
|
+
|
744
|
+
|
745
|
+
</li>
|
746
|
+
|
747
|
+
</ul>
|
748
|
+
|
749
|
+
</div><table class="source_code">
|
750
|
+
<tr>
|
751
|
+
<td>
|
752
|
+
<pre class="lines">
|
753
|
+
|
597
754
|
|
598
|
-
|
755
|
+
156</pre>
|
756
|
+
</td>
|
757
|
+
<td>
|
758
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 156</span>
|
759
|
+
|
760
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_comparable?'>comparable?</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>&&</span> <span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_comparable?'>comparable?</span> <span class='kw'>end</span></pre>
|
599
761
|
</td>
|
600
762
|
</tr>
|
601
763
|
</table>
|
602
764
|
</div>
|
603
765
|
|
604
766
|
<div class="method_details ">
|
605
|
-
<h3 class="signature " id="
|
767
|
+
<h3 class="signature " id="copyable?-instance_method">
|
606
768
|
|
607
|
-
- (<tt>
|
769
|
+
- (<tt>Boolean</tt>) <strong>copyable?</strong>
|
770
|
+
|
771
|
+
|
772
|
+
|
773
|
+
|
774
|
+
|
775
|
+
</h3><div class="docstring">
|
776
|
+
<div class="discussion">
|
777
|
+
|
778
|
+
|
779
|
+
</div>
|
780
|
+
</div>
|
781
|
+
<div class="tags">
|
782
|
+
|
783
|
+
<p class="tag_title">Returns:</p>
|
784
|
+
<ul class="return">
|
785
|
+
|
786
|
+
<li>
|
787
|
+
|
788
|
+
|
789
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
790
|
+
|
791
|
+
|
792
|
+
|
793
|
+
</li>
|
794
|
+
|
795
|
+
</ul>
|
796
|
+
|
797
|
+
</div><table class="source_code">
|
798
|
+
<tr>
|
799
|
+
<td>
|
800
|
+
<pre class="lines">
|
801
|
+
|
802
|
+
|
803
|
+
154</pre>
|
804
|
+
</td>
|
805
|
+
<td>
|
806
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 154</span>
|
807
|
+
|
808
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_copyable?'>copyable?</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>&&</span> <span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_copyable?'>copyable?</span> <span class='kw'>end</span></pre>
|
809
|
+
</td>
|
810
|
+
</tr>
|
811
|
+
</table>
|
812
|
+
</div>
|
813
|
+
|
814
|
+
<div class="method_details ">
|
815
|
+
<h3 class="signature " id="entities-instance_method">
|
816
|
+
|
817
|
+
- (<tt>Object</tt>) <strong>entities</strong>
|
608
818
|
|
609
819
|
|
610
820
|
|
@@ -616,63 +826,21 @@ Destroy an element bound to that key.
|
|
616
826
|
<pre class="lines">
|
617
827
|
|
618
828
|
|
619
|
-
|
620
|
-
173
|
621
|
-
174
|
622
|
-
175
|
623
|
-
176
|
624
|
-
177
|
625
|
-
178
|
626
|
-
179
|
627
|
-
180
|
628
|
-
181
|
629
|
-
182
|
630
|
-
183
|
631
|
-
184
|
632
|
-
185
|
633
|
-
186
|
634
|
-
187
|
635
|
-
188
|
636
|
-
189
|
637
|
-
190
|
638
|
-
191
|
639
|
-
192
|
640
|
-
193</pre>
|
829
|
+
142</pre>
|
641
830
|
</td>
|
642
831
|
<td>
|
643
|
-
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line
|
832
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 142</span>
|
644
833
|
|
645
|
-
<span class='kw'>def</span> <span class='id identifier
|
646
|
-
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
647
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor'>ctor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
648
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_dtor'>dtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
649
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_copy'>copy</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
650
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_equal'>equal</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
651
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> size_t </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_identify'>identify</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
652
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_purge'>purge</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
653
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> size_t </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
654
|
-
#define </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_empty'>empty</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self) (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self) == 0)
|
655
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsKey'>containsKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
656
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get'>get</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
657
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_put'>put</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
658
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_replace'>replace</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
659
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_remove'>remove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
660
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>*, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
661
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
662
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetKey'>itGetKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
663
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetElement'>itGetElement</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>*);
|
664
|
-
#define </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGet'>itGet</span><span class='embexpr_end'>}</span><span class='tstring_content'>(it) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetElement'>itGetElement</span><span class='embexpr_end'>}</span><span class='tstring_content'>(it)
|
665
|
-
</span><span class='tstring_end'>$</span></span>
|
666
|
-
<span class='kw'>end</span></pre>
|
834
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_entities'>entities</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'><<</span> <span class='id identifier rubyid_key'>key</span> <span class='kw'>end</span></pre>
|
667
835
|
</td>
|
668
836
|
</tr>
|
669
837
|
</table>
|
670
838
|
</div>
|
671
839
|
|
672
840
|
<div class="method_details ">
|
673
|
-
<h3 class="signature " id="
|
841
|
+
<h3 class="signature " id="hash-instance_method">
|
674
842
|
|
675
|
-
- (<tt>Object</tt>) <strong>
|
843
|
+
- (<tt>Object</tt>) <strong>hash</strong>
|
676
844
|
|
677
845
|
|
678
846
|
|
@@ -684,61 +852,67 @@ Destroy an element bound to that key.
|
|
684
852
|
<pre class="lines">
|
685
853
|
|
686
854
|
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
855
|
+
136</pre>
|
856
|
+
</td>
|
857
|
+
<td>
|
858
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 136</span>
|
859
|
+
|
860
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_hash'>hash</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>^</span> <span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_hash'>hash</span> <span class='kw'>end</span></pre>
|
861
|
+
</td>
|
862
|
+
</tr>
|
863
|
+
</table>
|
864
|
+
</div>
|
865
|
+
|
866
|
+
<div class="method_details ">
|
867
|
+
<h3 class="signature " id="hashable?-instance_method">
|
868
|
+
|
869
|
+
- (<tt>Boolean</tt>) <strong>hashable?</strong>
|
870
|
+
|
871
|
+
|
872
|
+
|
873
|
+
|
874
|
+
|
875
|
+
</h3><div class="docstring">
|
876
|
+
<div class="discussion">
|
877
|
+
|
878
|
+
|
879
|
+
</div>
|
880
|
+
</div>
|
881
|
+
<div class="tags">
|
882
|
+
|
883
|
+
<p class="tag_title">Returns:</p>
|
884
|
+
<ul class="return">
|
885
|
+
|
886
|
+
<li>
|
887
|
+
|
888
|
+
|
889
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
890
|
+
|
891
|
+
|
892
|
+
|
893
|
+
</li>
|
894
|
+
|
895
|
+
</ul>
|
896
|
+
|
897
|
+
</div><table class="source_code">
|
898
|
+
<tr>
|
899
|
+
<td>
|
900
|
+
<pre class="lines">
|
901
|
+
|
902
|
+
|
700
903
|
158
|
701
904
|
159
|
702
905
|
160
|
703
906
|
161
|
704
|
-
162
|
705
|
-
163
|
706
|
-
164
|
707
|
-
165
|
708
|
-
166
|
709
|
-
167
|
710
|
-
168
|
711
|
-
169
|
712
|
-
170</pre>
|
907
|
+
162</pre>
|
713
908
|
</td>
|
714
909
|
<td>
|
715
|
-
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line
|
910
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 158</span>
|
716
911
|
|
717
|
-
<span class='kw'>def</span> <span class='id identifier
|
718
|
-
<span class='
|
719
|
-
|
720
|
-
|
721
|
-
***/
|
722
|
-
</span><span class='tstring_end'>$</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_public?'>public?</span>
|
723
|
-
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
724
|
-
typedef struct </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
725
|
-
struct </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
726
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key;
|
727
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> value;
|
728
|
-
unsigned flags;
|
729
|
-
};
|
730
|
-
</span><span class='tstring_end'>$</span></span>
|
731
|
-
<span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_write_exported_types'>write_exported_types</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='rparen'>)</span>
|
732
|
-
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
733
|
-
typedef struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
734
|
-
typedef struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
735
|
-
struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
736
|
-
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entries;
|
737
|
-
};
|
738
|
-
struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
739
|
-
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> it;
|
740
|
-
};
|
741
|
-
</span><span class='tstring_end'>$</span></span>
|
912
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_hashable?'>hashable?</span>
|
913
|
+
<span class='comment'># NOTE : must be in sync with Type#hashable?
|
914
|
+
</span> <span class='comment'># No super call here because the map's element need not to be hashable,- only the key must be
|
915
|
+
</span> <span class='ivar'>@capability</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='symbol'>:hashable</span><span class='rparen'>)</span> <span class='op'>&&</span> <span class='id identifier rubyid_comparable?'>comparable?</span> <span class='op'>&&</span> <span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_hashable?'>hashable?</span>
|
742
916
|
<span class='kw'>end</span></pre>
|
743
917
|
</td>
|
744
918
|
</tr>
|
@@ -746,9 +920,9 @@ Destroy an element bound to that key.
|
|
746
920
|
</div>
|
747
921
|
|
748
922
|
<div class="method_details ">
|
749
|
-
<h3 class="signature " id="
|
923
|
+
<h3 class="signature " id="write_impls-instance_method">
|
750
924
|
|
751
|
-
- (<tt>Object</tt>) <strong>
|
925
|
+
- (<tt>Object</tt>) <strong>write_impls</strong>(stream, define)
|
752
926
|
|
753
927
|
|
754
928
|
|
@@ -760,26 +934,6 @@ Destroy an element bound to that key.
|
|
760
934
|
<pre class="lines">
|
761
935
|
|
762
936
|
|
763
|
-
195
|
764
|
-
196
|
765
|
-
197
|
766
|
-
198
|
767
|
-
199
|
768
|
-
200
|
769
|
-
201
|
770
|
-
202
|
771
|
-
203
|
772
|
-
204
|
773
|
-
205
|
774
|
-
206
|
775
|
-
207
|
776
|
-
208
|
777
|
-
209
|
778
|
-
210
|
779
|
-
211
|
780
|
-
212
|
781
|
-
213
|
782
|
-
214
|
783
937
|
215
|
784
938
|
216
|
785
939
|
217
|
@@ -948,24 +1102,44 @@ Destroy an element bound to that key.
|
|
948
1102
|
380
|
949
1103
|
381
|
950
1104
|
382
|
951
|
-
383
|
1105
|
+
383
|
1106
|
+
384
|
1107
|
+
385
|
1108
|
+
386
|
1109
|
+
387
|
1110
|
+
388
|
1111
|
+
389
|
1112
|
+
390
|
1113
|
+
391
|
1114
|
+
392
|
1115
|
+
393
|
1116
|
+
394
|
1117
|
+
395
|
1118
|
+
396
|
1119
|
+
397
|
1120
|
+
398
|
1121
|
+
399
|
1122
|
+
400
|
1123
|
+
401
|
1124
|
+
402
|
1125
|
+
403</pre>
|
952
1126
|
</td>
|
953
1127
|
<td>
|
954
|
-
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line
|
1128
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 215</span>
|
955
1129
|
|
956
|
-
<span class='kw'>def</span> <span class='id identifier
|
1130
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_write_impls'>write_impls</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='comma'>,</span> <span class='id identifier rubyid_define'>define</span><span class='rparen'>)</span>
|
957
1131
|
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
958
1132
|
#define AUTOC_VALID_VALUE 1
|
959
1133
|
#define AUTOC_VALID_KEY 2
|
960
1134
|
#define AUTOC_OWNED_VALUE 4
|
961
1135
|
#define AUTOC_OWNED_KEY 8
|
962
|
-
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryKeyOnlyRef'>entryKeyOnlyRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier
|
1136
|
+
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryKeyOnlyRef'>entryKeyOnlyRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> key) {
|
963
1137
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry;
|
964
1138
|
entry.key = *key;
|
965
1139
|
entry.flags = AUTOC_VALID_KEY;
|
966
1140
|
return entry;
|
967
1141
|
}
|
968
|
-
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryKeyValueRef'>entryKeyValueRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier
|
1142
|
+
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryKeyValueRef'>entryKeyValueRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> key, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> value) {
|
969
1143
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry;
|
970
1144
|
entry.key = *key;
|
971
1145
|
entry.value = *value;
|
@@ -981,7 +1155,7 @@ Destroy an element bound to that key.
|
|
981
1155
|
return </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_equal'>equal</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>lt->key</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>rt->key</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
982
1156
|
}
|
983
1157
|
#define </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryCopy'>entryCopy</span><span class='embexpr_end'>}</span><span class='tstring_content'>(dst, src) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryCopyRef'>entryCopyRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&dst, &src)
|
984
|
-
static void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryCopyRef'>entryCopyRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier
|
1158
|
+
static void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_entryCopyRef'>entryCopyRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> dst, </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> src) {
|
985
1159
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(src->flags & AUTOC_VALID_KEY);
|
986
1160
|
dst->flags = (AUTOC_VALID_KEY | AUTOC_OWNED_KEY);
|
987
1161
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_copy'>copy</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>dst->key</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>src->key</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
@@ -996,20 +1170,35 @@ Destroy an element bound to that key.
|
|
996
1170
|
if(entry->flags & AUTOC_OWNED_KEY) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry->key</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
997
1171
|
if(entry->flags & AUTOC_VALID_VALUE && entry->flags & AUTOC_OWNED_VALUE) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry->value</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
998
1172
|
}
|
1173
|
+
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetEntryRef'>itGetEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1174
|
+
static int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsAllOf'>containsAllOf</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> other) {
|
1175
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> it;
|
1176
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&it, self);
|
1177
|
+
while(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&it)) {
|
1178
|
+
int found = 0;
|
1179
|
+
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>* e = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetEntryRef'>itGetEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&it);
|
1180
|
+
if(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsKey'>containsKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(other, e->key)) {
|
1181
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> other_value = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get'>get</span><span class='embexpr_end'>}</span><span class='tstring_content'>(other, e->key);
|
1182
|
+
found = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_equal'>equal</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>e->value</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>other_value</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1183
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>other_value</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1184
|
+
}
|
1185
|
+
if(!found) return 0;
|
1186
|
+
}
|
1187
|
+
return 1;
|
1188
|
+
}
|
999
1189
|
</span><span class='tstring_end'>$</span></span>
|
1000
|
-
<span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier
|
1001
|
-
<span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier
|
1190
|
+
<span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_write_intf_decls'>write_intf_decls</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='comma'>,</span> <span class='id identifier rubyid_static'>static</span><span class='comma'>,</span> <span class='id identifier rubyid_inline'>inline</span><span class='rparen'>)</span>
|
1191
|
+
<span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_write_impls'>write_impls</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='comma'>,</span> <span class='id identifier rubyid_static'>static</span><span class='rparen'>)</span>
|
1002
1192
|
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
1003
|
-
|
1004
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor'>ctor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>* self) {
|
1193
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor'>ctor</span><span class='period'>.</span><span class='id identifier rubyid_definition'>definition</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1005
1194
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1006
1195
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_ctor'>ctor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->entries);
|
1007
1196
|
}
|
1008
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'>
|
1197
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_dtor'>dtor</span><span class='period'>.</span><span class='id identifier rubyid_definition'>definition</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1009
1198
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1010
1199
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->entries);
|
1011
1200
|
}
|
1012
|
-
static int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_putEntryRef'>putEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1201
|
+
static int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_putEntryRef'>putEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry) {
|
1013
1202
|
int absent;
|
1014
1203
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1015
1204
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(entry);
|
@@ -1018,7 +1207,7 @@ Destroy an element bound to that key.
|
|
1018
1207
|
}
|
1019
1208
|
return absent;
|
1020
1209
|
}
|
1021
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'>
|
1210
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_copy'>copy</span><span class='period'>.</span><span class='id identifier rubyid_definition'>definition</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1022
1211
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> it;
|
1023
1212
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(src);
|
1024
1213
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(dst);
|
@@ -1029,39 +1218,24 @@ Destroy an element bound to that key.
|
|
1029
1218
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_putEntryRef'>putEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(dst, e);
|
1030
1219
|
}
|
1031
1220
|
}
|
1032
|
-
|
1033
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> it;
|
1034
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&it, self);
|
1035
|
-
while(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&it)) {
|
1036
|
-
int found = 0;
|
1037
|
-
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>* e = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetEntryRef'>itGetEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&it);
|
1038
|
-
if(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsKey'>containsKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(other, e->key)) {
|
1039
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> other_value = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get'>get</span><span class='embexpr_end'>}</span><span class='tstring_content'>(other, e->key);
|
1040
|
-
found = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_equal'>equal</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>e->value</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>other_value</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1041
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>other_value</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1042
|
-
}
|
1043
|
-
if(!found) return 0;
|
1044
|
-
}
|
1045
|
-
return 1;
|
1046
|
-
}
|
1047
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_equal'>equal</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>* lt, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>* rt) {
|
1221
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_equal'>equal</span><span class='period'>.</span><span class='id identifier rubyid_definition'>definition</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1048
1222
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(lt);
|
1049
1223
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(rt);
|
1050
1224
|
return </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(lt) == </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(rt) && </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsAllOf'>containsAllOf</span><span class='embexpr_end'>}</span><span class='tstring_content'>(lt, rt) && </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsAllOf'>containsAllOf</span><span class='embexpr_end'>}</span><span class='tstring_content'>(rt, lt);
|
1051
1225
|
}
|
1052
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'>
|
1226
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_identify'>identify</span><span class='period'>.</span><span class='id identifier rubyid_definition'>definition</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1053
1227
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1054
1228
|
return </span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_identify'>identify</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->entries); /* TODO : make use of the values' hashes */
|
1055
1229
|
}
|
1056
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_purge'>purge</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1230
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_purge'>purge</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self) {
|
1057
1231
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1058
1232
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_purge'>purge</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->entries);
|
1059
1233
|
}
|
1060
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> size_t </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1234
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> size_t </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self) {
|
1061
1235
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1062
1236
|
return </span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->entries);
|
1063
1237
|
}
|
1064
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsKey'>containsKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1238
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsKey'>containsKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key) {
|
1065
1239
|
int result;
|
1066
1240
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry;
|
1067
1241
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
@@ -1069,7 +1243,7 @@ Destroy an element bound to that key.
|
|
1069
1243
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1070
1244
|
return result;
|
1071
1245
|
}
|
1072
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get'>get</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1246
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get'>get</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key) {
|
1073
1247
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> result;
|
1074
1248
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry, existing_entry;
|
1075
1249
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
@@ -1080,7 +1254,7 @@ Destroy an element bound to that key.
|
|
1080
1254
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1081
1255
|
return result;
|
1082
1256
|
}
|
1083
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_put'>put</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1257
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_put'>put</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> value) {
|
1084
1258
|
int result;
|
1085
1259
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry;
|
1086
1260
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
@@ -1089,7 +1263,7 @@ Destroy an element bound to that key.
|
|
1089
1263
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1090
1264
|
return result;
|
1091
1265
|
}
|
1092
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_replace'>replace</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1266
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_replace'>replace</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> value) {
|
1093
1267
|
int result;
|
1094
1268
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry;
|
1095
1269
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
@@ -1098,7 +1272,7 @@ Destroy an element bound to that key.
|
|
1098
1272
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1099
1273
|
return result;
|
1100
1274
|
}
|
1101
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_remove'>remove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1275
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_remove'>remove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key) {
|
1102
1276
|
int result;
|
1103
1277
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entry;
|
1104
1278
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
@@ -1106,25 +1280,25 @@ Destroy an element bound to that key.
|
|
1106
1280
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_dtor'>dtor</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>entry</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1107
1281
|
return result;
|
1108
1282
|
}
|
1109
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1283
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> map) {
|
1110
1284
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1111
1285
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(map);
|
1112
1286
|
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->it, &map->entries);
|
1113
1287
|
}
|
1114
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1288
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self) {
|
1115
1289
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1116
1290
|
return </span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->it);
|
1117
1291
|
}
|
1118
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetKey'>itGetKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1119
|
-
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier
|
1292
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetKey'>itGetKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self) {
|
1293
|
+
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> e;
|
1120
1294
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key;
|
1121
1295
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1122
1296
|
e = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetEntryRef'>itGetEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1123
1297
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_copy'>copy</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>key</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>e->key</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1124
1298
|
return key;
|
1125
1299
|
}
|
1126
|
-
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetElement'>itGetElement</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier
|
1127
|
-
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier
|
1300
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_define'>define</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetElement'>itGetElement</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self) {
|
1301
|
+
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> e;
|
1128
1302
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> value;
|
1129
1303
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1130
1304
|
e = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetEntryRef'>itGetEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
@@ -1132,7 +1306,7 @@ Destroy an element bound to that key.
|
|
1132
1306
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_copy'>copy</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>value</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>e->value</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1133
1307
|
return value;
|
1134
1308
|
}
|
1135
|
-
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier
|
1309
|
+
static </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetEntryRef'>itGetEntryRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'> self) {
|
1136
1310
|
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_assert'>assert</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self);
|
1137
1311
|
return </span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_itGetRef'>itGetRef</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&self->it);
|
1138
1312
|
}
|
@@ -1145,6 +1319,152 @@ Destroy an element bound to that key.
|
|
1145
1319
|
</td>
|
1146
1320
|
</tr>
|
1147
1321
|
</table>
|
1322
|
+
</div>
|
1323
|
+
|
1324
|
+
<div class="method_details ">
|
1325
|
+
<h3 class="signature " id="write_intf_decls-instance_method">
|
1326
|
+
|
1327
|
+
- (<tt>Object</tt>) <strong>write_intf_decls</strong>(stream, declare, define)
|
1328
|
+
|
1329
|
+
|
1330
|
+
|
1331
|
+
|
1332
|
+
|
1333
|
+
</h3><table class="source_code">
|
1334
|
+
<tr>
|
1335
|
+
<td>
|
1336
|
+
<pre class="lines">
|
1337
|
+
|
1338
|
+
|
1339
|
+
191
|
1340
|
+
192
|
1341
|
+
193
|
1342
|
+
194
|
1343
|
+
195
|
1344
|
+
196
|
1345
|
+
197
|
1346
|
+
198
|
1347
|
+
199
|
1348
|
+
200
|
1349
|
+
201
|
1350
|
+
202
|
1351
|
+
203
|
1352
|
+
204
|
1353
|
+
205
|
1354
|
+
206
|
1355
|
+
207
|
1356
|
+
208
|
1357
|
+
209
|
1358
|
+
210
|
1359
|
+
211
|
1360
|
+
212
|
1361
|
+
213</pre>
|
1362
|
+
</td>
|
1363
|
+
<td>
|
1364
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 191</span>
|
1365
|
+
|
1366
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_write_intf_decls'>write_intf_decls</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='comma'>,</span> <span class='id identifier rubyid_declare'>declare</span><span class='comma'>,</span> <span class='id identifier rubyid_define'>define</span><span class='rparen'>)</span>
|
1367
|
+
<span class='kw'>super</span>
|
1368
|
+
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
1369
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor'>ctor</span><span class='period'>.</span><span class='id identifier rubyid_declaration'>declaration</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1370
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_dtor'>dtor</span><span class='period'>.</span><span class='id identifier rubyid_declaration'>declaration</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1371
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_copy'>copy</span><span class='period'>.</span><span class='id identifier rubyid_declaration'>declaration</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1372
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_equal'>equal</span><span class='period'>.</span><span class='id identifier rubyid_declaration'>declaration</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1373
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_identify'>identify</span><span class='period'>.</span><span class='id identifier rubyid_declaration'>declaration</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1374
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_purge'>purge</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1375
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> size_t </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1376
|
+
#define </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_empty'>empty</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self) (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self) == 0)
|
1377
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_containsKey'>containsKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1378
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get'>get</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1379
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_put'>put</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1380
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_replace'>replace</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1381
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_remove'>remove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1382
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> void </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itCtor'>itCtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1383
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> int </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itMove'>itMove</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1384
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetKey'>itGetKey</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1385
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_declare'>declare</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetElement'>itGetElement</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it_ref'>it_ref</span><span class='embexpr_end'>}</span><span class='tstring_content'>);
|
1386
|
+
#define </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGet'>itGet</span><span class='embexpr_end'>}</span><span class='tstring_content'>(it) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_itGetElement'>itGetElement</span><span class='embexpr_end'>}</span><span class='tstring_content'>(it)
|
1387
|
+
</span><span class='tstring_end'>$</span></span>
|
1388
|
+
<span class='kw'>end</span></pre>
|
1389
|
+
</td>
|
1390
|
+
</tr>
|
1391
|
+
</table>
|
1392
|
+
</div>
|
1393
|
+
|
1394
|
+
<div class="method_details ">
|
1395
|
+
<h3 class="signature " id="write_intf_types-instance_method">
|
1396
|
+
|
1397
|
+
- (<tt>Object</tt>) <strong>write_intf_types</strong>(stream)
|
1398
|
+
|
1399
|
+
|
1400
|
+
|
1401
|
+
|
1402
|
+
|
1403
|
+
</h3><table class="source_code">
|
1404
|
+
<tr>
|
1405
|
+
<td>
|
1406
|
+
<pre class="lines">
|
1407
|
+
|
1408
|
+
|
1409
|
+
164
|
1410
|
+
165
|
1411
|
+
166
|
1412
|
+
167
|
1413
|
+
168
|
1414
|
+
169
|
1415
|
+
170
|
1416
|
+
171
|
1417
|
+
172
|
1418
|
+
173
|
1419
|
+
174
|
1420
|
+
175
|
1421
|
+
176
|
1422
|
+
177
|
1423
|
+
178
|
1424
|
+
179
|
1425
|
+
180
|
1426
|
+
181
|
1427
|
+
182
|
1428
|
+
183
|
1429
|
+
184
|
1430
|
+
185
|
1431
|
+
186
|
1432
|
+
187
|
1433
|
+
188
|
1434
|
+
189</pre>
|
1435
|
+
</td>
|
1436
|
+
<td>
|
1437
|
+
<pre class="code"><span class="info file"># File 'lib/autoc/collection/hash_map.rb', line 164</span>
|
1438
|
+
|
1439
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_write_intf_types'>write_intf_types</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='rparen'>)</span>
|
1440
|
+
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
1441
|
+
/***
|
1442
|
+
**** </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'><</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>,</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>> (</span><span class='embexpr_beg'>#{</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='embexpr_end'>}</span><span class='tstring_content'>)
|
1443
|
+
***/
|
1444
|
+
</span><span class='tstring_end'>$</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_public?'>public?</span>
|
1445
|
+
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
1446
|
+
typedef struct </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1447
|
+
struct </span><span class='embexpr_beg'>#{</span><span class='ivar'>@entry</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1448
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> key;
|
1449
|
+
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> value;
|
1450
|
+
unsigned flags;
|
1451
|
+
};
|
1452
|
+
</span><span class='tstring_end'>$</span></span>
|
1453
|
+
<span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_write_intf_types'>write_intf_types</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='rparen'>)</span>
|
1454
|
+
<span class='id identifier rubyid_stream'>stream</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
|
1455
|
+
typedef struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1456
|
+
typedef struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>;
|
1457
|
+
struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1458
|
+
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_type'>type</span><span class='embexpr_end'>}</span><span class='tstring_content'> entries;
|
1459
|
+
};
|
1460
|
+
struct </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> {
|
1461
|
+
</span><span class='embexpr_beg'>#{</span><span class='ivar'>@set</span><span class='period'>.</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'> it;
|
1462
|
+
};
|
1463
|
+
</span><span class='tstring_end'>$</span></span>
|
1464
|
+
<span class='kw'>end</span></pre>
|
1465
|
+
</td>
|
1466
|
+
</tr>
|
1467
|
+
</table>
|
1148
1468
|
</div>
|
1149
1469
|
|
1150
1470
|
</div>
|
@@ -1152,9 +1472,9 @@ Destroy an element bound to that key.
|
|
1152
1472
|
</div>
|
1153
1473
|
|
1154
1474
|
<div id="footer">
|
1155
|
-
Generated on
|
1475
|
+
Generated on Sat Nov 22 16:58:04 2014 by
|
1156
1476
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1157
|
-
0.8.7.
|
1477
|
+
0.8.7.6 (ruby-2.1.5).
|
1158
1478
|
</div>
|
1159
1479
|
|
1160
1480
|
</body>
|