hamster 0.3.6 → 0.3.7

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.
Files changed (381) hide show
  1. data/History.rdoc +10 -0
  2. data/LICENSE +1 -1
  3. data/README.rdoc +4 -1
  4. data/Rakefile +1 -1
  5. data/lib/hamster.rb +1 -0
  6. data/lib/hamster/core_ext/enumerable.rbc +676 -0
  7. data/lib/hamster/core_ext/io.rbc +657 -0
  8. data/lib/hamster/hash.rb +4 -0
  9. data/lib/hamster/hash.rbc +4160 -0
  10. data/lib/hamster/immutable.rbc +1664 -0
  11. data/lib/hamster/list.rbc +15902 -0
  12. data/lib/hamster/queue.rb +93 -0
  13. data/lib/hamster/read_copy_update.rb +36 -0
  14. data/lib/hamster/read_copy_update_hash.rb +8 -26
  15. data/lib/hamster/read_copy_update_list.rb +26 -0
  16. data/lib/hamster/read_copy_update_queue.rb +27 -0
  17. data/lib/hamster/read_copy_update_set.rb +7 -21
  18. data/lib/hamster/read_copy_update_stack.rb +8 -24
  19. data/lib/hamster/set.rbc +7865 -0
  20. data/lib/hamster/sorter.rb +2 -2
  21. data/lib/hamster/sorter.rbc +392 -0
  22. data/lib/hamster/stack.rb +4 -1
  23. data/lib/hamster/stack.rbc +1662 -0
  24. data/lib/hamster/trie.rbc +3563 -0
  25. data/lib/hamster/tuple.rbc +899 -0
  26. data/lib/hamster/undefined.rbc +280 -0
  27. data/lib/hamster/version.rb +1 -1
  28. data/spec/hamster/core_ext/array_spec.rb +1 -1
  29. data/spec/hamster/core_ext/array_spec.rbc +402 -0
  30. data/spec/hamster/core_ext/enumerable_spec.rb +1 -1
  31. data/spec/hamster/core_ext/enumerable_spec.rbc +726 -0
  32. data/spec/hamster/core_ext/io_spec.rb +1 -1
  33. data/spec/hamster/core_ext/io_spec.rbc +398 -0
  34. data/spec/hamster/hash/all_spec.rb +1 -1
  35. data/spec/hamster/hash/all_spec.rbc +1360 -0
  36. data/spec/hamster/hash/any_spec.rb +1 -1
  37. data/spec/hamster/hash/any_spec.rbc +1557 -0
  38. data/spec/hamster/hash/clear_spec.rb +36 -0
  39. data/spec/hamster/hash/construction_spec.rb +1 -1
  40. data/spec/hamster/hash/construction_spec.rbc +756 -0
  41. data/spec/hamster/hash/copying_spec.rb +1 -1
  42. data/spec/hamster/hash/copying_spec.rbc +514 -0
  43. data/spec/hamster/hash/delete_spec.rb +1 -1
  44. data/spec/hamster/hash/delete_spec.rbc +1167 -0
  45. data/spec/hamster/hash/each_spec.rb +1 -1
  46. data/spec/hamster/hash/each_spec.rbc +1016 -0
  47. data/spec/hamster/hash/empty_spec.rb +1 -1
  48. data/spec/hamster/hash/empty_spec.rbc +590 -0
  49. data/spec/hamster/hash/eql_spec.rb +1 -1
  50. data/spec/hamster/hash/eql_spec.rbc +1732 -0
  51. data/spec/hamster/hash/filter_spec.rb +1 -1
  52. data/spec/hamster/hash/filter_spec.rbc +1498 -0
  53. data/spec/hamster/hash/find_spec.rb +1 -1
  54. data/spec/hamster/hash/find_spec.rbc +1478 -0
  55. data/spec/hamster/hash/get_spec.rb +1 -1
  56. data/spec/hamster/hash/get_spec.rbc +796 -0
  57. data/spec/hamster/hash/has_key_spec.rb +1 -1
  58. data/spec/hamster/hash/has_key_spec.rbc +826 -0
  59. data/spec/hamster/hash/hash_spec.rb +6 -6
  60. data/spec/hamster/hash/hash_spec.rbc +975 -0
  61. data/spec/hamster/hash/immutable_spec.rb +1 -1
  62. data/spec/hamster/hash/immutable_spec.rbc +251 -0
  63. data/spec/hamster/hash/inspect_spec.rb +2 -2
  64. data/spec/hamster/hash/inspect_spec.rbc +769 -0
  65. data/spec/hamster/hash/keys_spec.rb +1 -1
  66. data/spec/hamster/hash/keys_spec.rbc +484 -0
  67. data/spec/hamster/hash/map_spec.rb +1 -1
  68. data/spec/hamster/hash/map_spec.rbc +1520 -0
  69. data/spec/hamster/hash/merge_spec.rb +1 -1
  70. data/spec/hamster/hash/merge_spec.rbc +881 -0
  71. data/spec/hamster/hash/none_spec.rb +1 -1
  72. data/spec/hamster/hash/none_spec.rbc +1456 -0
  73. data/spec/hamster/hash/put_spec.rb +1 -1
  74. data/spec/hamster/hash/put_spec.rbc +1799 -0
  75. data/spec/hamster/hash/reduce_spec.rb +1 -1
  76. data/spec/hamster/hash/reduce_spec.rbc +1299 -0
  77. data/spec/hamster/hash/remove_spec.rb +1 -1
  78. data/spec/hamster/hash/remove_spec.rbc +1515 -0
  79. data/spec/hamster/hash/size_spec.rb +1 -1
  80. data/spec/hamster/hash/size_spec.rbc +591 -0
  81. data/spec/hamster/hash/uniq_spec.rb +1 -1
  82. data/spec/hamster/hash/uniq_spec.rbc +519 -0
  83. data/spec/hamster/immutable/copying_spec.rb +1 -1
  84. data/spec/hamster/immutable/copying_spec.rbc +589 -0
  85. data/spec/hamster/immutable/immutable_spec.rb +1 -1
  86. data/spec/hamster/immutable/immutable_spec.rbc +1152 -0
  87. data/spec/hamster/immutable/memoize_spec.rb +1 -1
  88. data/spec/hamster/immutable/memoize_spec.rbc +1256 -0
  89. data/spec/hamster/immutable/new_spec.rb +3 -3
  90. data/spec/hamster/immutable/new_spec.rbc +662 -0
  91. data/spec/hamster/immutable/transform_spec.rb +3 -3
  92. data/spec/hamster/immutable/transform_spec.rbc +796 -0
  93. data/spec/hamster/immutable/transform_unless_spec.rb +3 -3
  94. data/spec/hamster/immutable/transform_unless_spec.rbc +1302 -0
  95. data/spec/hamster/list/all_spec.rb +1 -1
  96. data/spec/hamster/list/all_spec.rbc +2275 -0
  97. data/spec/hamster/list/any_spec.rb +1 -1
  98. data/spec/hamster/list/any_spec.rbc +1833 -0
  99. data/spec/hamster/list/append_spec.rb +1 -1
  100. data/spec/hamster/list/append_spec.rbc +1226 -0
  101. data/spec/hamster/list/at_spec.rb +1 -1
  102. data/spec/hamster/list/at_spec.rbc +1008 -0
  103. data/spec/hamster/list/break_spec.rb +1 -1
  104. data/spec/hamster/list/break_spec.rbc +1876 -0
  105. data/spec/hamster/list/cadr_spec.rb +1 -1
  106. data/spec/hamster/list/cadr_spec.rbc +1074 -0
  107. data/spec/hamster/list/chunk_spec.rb +1 -1
  108. data/spec/hamster/list/chunk_spec.rbc +939 -0
  109. data/spec/hamster/list/clear_spec.rb +2 -2
  110. data/spec/hamster/list/clear_spec.rbc +644 -0
  111. data/spec/hamster/list/combinations_spec.rb +1 -1
  112. data/spec/hamster/list/combinations_spec.rbc +1335 -0
  113. data/spec/hamster/list/compact_spec.rb +1 -1
  114. data/spec/hamster/list/compact_spec.rbc +1006 -0
  115. data/spec/hamster/list/cons_spec.rb +1 -1
  116. data/spec/hamster/list/cons_spec.rbc +861 -0
  117. data/spec/hamster/list/construction_spec.rb +1 -1
  118. data/spec/hamster/list/construction_spec.rbc +3098 -0
  119. data/spec/hamster/list/copying_spec.rb +1 -1
  120. data/spec/hamster/list/copying_spec.rbc +574 -0
  121. data/spec/hamster/list/count_spec.rb +1 -1
  122. data/spec/hamster/list/count_spec.rbc +1260 -0
  123. data/spec/hamster/list/cycle_spec.rb +1 -1
  124. data/spec/hamster/list/cycle_spec.rbc +1029 -0
  125. data/spec/hamster/list/drop_spec.rb +1 -1
  126. data/spec/hamster/list/drop_spec.rbc +968 -0
  127. data/spec/hamster/list/drop_while_spec.rb +1 -1
  128. data/spec/hamster/list/drop_while_spec.rbc +1342 -0
  129. data/spec/hamster/list/each_slice_spec.rb +1 -1
  130. data/spec/hamster/list/each_slice_spec.rbc +1730 -0
  131. data/spec/hamster/list/each_spec.rb +1 -1
  132. data/spec/hamster/list/each_spec.rbc +1464 -0
  133. data/spec/hamster/list/elem_index_spec.rb +1 -1
  134. data/spec/hamster/list/elem_index_spec.rbc +1137 -0
  135. data/spec/hamster/list/elem_indices_spec.rb +1 -1
  136. data/spec/hamster/list/elem_indices_spec.rbc +1006 -0
  137. data/spec/hamster/list/empty_spec.rb +1 -1
  138. data/spec/hamster/list/empty_spec.rbc +970 -0
  139. data/spec/hamster/list/eql_spec.rb +1 -1
  140. data/spec/hamster/list/eql_spec.rbc +1722 -0
  141. data/spec/hamster/list/filter_spec.rb +1 -1
  142. data/spec/hamster/list/filter_spec.rbc +1430 -0
  143. data/spec/hamster/list/find_index_spec.rb +1 -1
  144. data/spec/hamster/list/find_index_spec.rbc +1240 -0
  145. data/spec/hamster/list/find_indices_spec.rb +1 -1
  146. data/spec/hamster/list/find_indices_spec.rbc +1109 -0
  147. data/spec/hamster/list/find_spec.rb +1 -1
  148. data/spec/hamster/list/find_spec.rbc +1369 -0
  149. data/spec/hamster/list/flatten_spec.rb +1 -1
  150. data/spec/hamster/list/flatten_spec.rbc +973 -0
  151. data/spec/hamster/list/grep_spec.rb +1 -1
  152. data/spec/hamster/list/grep_spec.rbc +1577 -0
  153. data/spec/hamster/list/group_by_spec.rb +1 -1
  154. data/spec/hamster/list/group_by_spec.rbc +1588 -0
  155. data/spec/hamster/list/hash_spec.rb +6 -6
  156. data/spec/hamster/list/hash_spec.rbc +935 -0
  157. data/spec/hamster/list/head_spec.rb +1 -1
  158. data/spec/hamster/list/head_spec.rbc +971 -0
  159. data/spec/hamster/list/include_spec.rb +1 -1
  160. data/spec/hamster/list/include_spec.rbc +1123 -0
  161. data/spec/hamster/list/init_spec.rb +1 -1
  162. data/spec/hamster/list/init_spec.rbc +896 -0
  163. data/spec/hamster/list/inits_spec.rb +1 -1
  164. data/spec/hamster/list/inits_spec.rbc +1011 -0
  165. data/spec/hamster/list/inspect_spec.rb +1 -1
  166. data/spec/hamster/list/inspect_spec.rbc +874 -0
  167. data/spec/hamster/list/intersperse_spec.rb +1 -1
  168. data/spec/hamster/list/intersperse_spec.rbc +931 -0
  169. data/spec/hamster/list/join_spec.rb +1 -1
  170. data/spec/hamster/list/join_spec.rbc +1599 -0
  171. data/spec/hamster/list/last_spec.rb +1 -1
  172. data/spec/hamster/list/last_spec.rbc +875 -0
  173. data/spec/hamster/list/map_spec.rb +1 -1
  174. data/spec/hamster/list/map_spec.rbc +1613 -0
  175. data/spec/hamster/list/maximum_spec.rb +1 -1
  176. data/spec/hamster/list/maximum_spec.rbc +1558 -0
  177. data/spec/hamster/list/minimum_spec.rb +1 -1
  178. data/spec/hamster/list/minimum_spec.rbc +1558 -0
  179. data/spec/hamster/list/none_spec.rb +1 -1
  180. data/spec/hamster/list/none_spec.rbc +1725 -0
  181. data/spec/hamster/list/one_spec.rb +1 -1
  182. data/spec/hamster/list/one_spec.rbc +1747 -0
  183. data/spec/hamster/list/partition_spec.rb +1 -1
  184. data/spec/hamster/list/partition_spec.rbc +1582 -0
  185. data/spec/hamster/list/product_spec.rb +1 -1
  186. data/spec/hamster/list/product_spec.rbc +863 -0
  187. data/spec/hamster/list/reduce_spec.rb +1 -1
  188. data/spec/hamster/list/reduce_spec.rbc +2032 -0
  189. data/spec/hamster/list/remove_spec.rb +1 -1
  190. data/spec/hamster/list/remove_spec.rbc +1578 -0
  191. data/spec/hamster/list/reverse_spec.rb +1 -1
  192. data/spec/hamster/list/reverse_spec.rbc +1247 -0
  193. data/spec/hamster/list/size_spec.rb +1 -1
  194. data/spec/hamster/list/size_spec.rbc +943 -0
  195. data/spec/hamster/list/slice_spec.rb +1 -1
  196. data/spec/hamster/list/slice_spec.rbc +1133 -0
  197. data/spec/hamster/list/sorting_spec.rb +1 -1
  198. data/spec/hamster/list/sorting_spec.rbc +1677 -0
  199. data/spec/hamster/list/span_spec.rb +1 -1
  200. data/spec/hamster/list/span_spec.rbc +1788 -0
  201. data/spec/hamster/list/split_at_spec.rb +1 -1
  202. data/spec/hamster/list/split_at_spec.rbc +1168 -0
  203. data/spec/hamster/list/sum_spec.rb +1 -1
  204. data/spec/hamster/list/sum_spec.rbc +861 -0
  205. data/spec/hamster/list/tail_spec.rb +1 -1
  206. data/spec/hamster/list/tail_spec.rbc +1018 -0
  207. data/spec/hamster/list/tails_spec.rb +1 -1
  208. data/spec/hamster/list/tails_spec.rbc +1011 -0
  209. data/spec/hamster/list/take_spec.rb +1 -1
  210. data/spec/hamster/list/take_spec.rbc +962 -0
  211. data/spec/hamster/list/take_while_spec.rb +1 -1
  212. data/spec/hamster/list/take_while_spec.rbc +1456 -0
  213. data/spec/hamster/list/to_a_spec.rb +1 -1
  214. data/spec/hamster/list/to_a_spec.rbc +1058 -0
  215. data/spec/hamster/list/to_ary_spec.rb +1 -1
  216. data/spec/hamster/list/to_ary_spec.rbc +1270 -0
  217. data/spec/hamster/list/to_list_spec.rb +1 -1
  218. data/spec/hamster/list/to_list_spec.rbc +560 -0
  219. data/spec/hamster/list/to_set_spec.rb +1 -1
  220. data/spec/hamster/list/to_set_spec.rbc +585 -0
  221. data/spec/hamster/list/union_spec.rb +1 -1
  222. data/spec/hamster/list/union_spec.rbc +1189 -0
  223. data/spec/hamster/list/uniq_spec.rb +1 -1
  224. data/spec/hamster/list/uniq_spec.rbc +1030 -0
  225. data/spec/hamster/list/zip_spec.rb +1 -1
  226. data/spec/hamster/list/zip_spec.rbc +1039 -0
  227. data/spec/hamster/queue/clear_spec.rb +36 -0
  228. data/spec/hamster/queue/construction_spec.rb +43 -0
  229. data/spec/hamster/queue/dequeue_spec.rb +40 -0
  230. data/spec/hamster/queue/empty_spec.rb +47 -0
  231. data/spec/hamster/queue/enqueue_spec.rb +41 -0
  232. data/spec/hamster/queue/head_spec.rb +35 -0
  233. data/spec/hamster/queue/inspect_spec.rb +31 -0
  234. data/spec/hamster/queue/size_spec.rb +35 -0
  235. data/spec/hamster/queue/to_a_spec.rb +42 -0
  236. data/spec/hamster/queue/to_ary_spec.rb +44 -0
  237. data/spec/hamster/queue/to_list_spec.rb +44 -0
  238. data/spec/hamster/set/add_spec.rb +1 -1
  239. data/spec/hamster/set/add_spec.rbc +1076 -0
  240. data/spec/hamster/set/all_spec.rb +1 -1
  241. data/spec/hamster/set/all_spec.rbc +1475 -0
  242. data/spec/hamster/set/any_spec.rb +1 -1
  243. data/spec/hamster/set/any_spec.rbc +1506 -0
  244. data/spec/hamster/set/clear_spec.rb +2 -2
  245. data/spec/hamster/set/clear_spec.rbc +644 -0
  246. data/spec/hamster/set/compact_spec.rb +1 -1
  247. data/spec/hamster/set/compact_spec.rbc +811 -0
  248. data/spec/hamster/set/construction_spec.rb +1 -1
  249. data/spec/hamster/set/construction_spec.rbc +412 -0
  250. data/spec/hamster/set/copying_spec.rb +1 -1
  251. data/spec/hamster/set/copying_spec.rbc +464 -0
  252. data/spec/hamster/set/count_spec.rb +1 -1
  253. data/spec/hamster/set/count_spec.rbc +977 -0
  254. data/spec/hamster/set/delete_spec.rb +1 -1
  255. data/spec/hamster/set/delete_spec.rbc +979 -0
  256. data/spec/hamster/set/difference_spec.rb +1 -1
  257. data/spec/hamster/set/difference_spec.rbc +784 -0
  258. data/spec/hamster/set/each_spec.rb +1 -1
  259. data/spec/hamster/set/each_spec.rbc +928 -0
  260. data/spec/hamster/set/empty_spec.rb +1 -1
  261. data/spec/hamster/set/empty_spec.rbc +659 -0
  262. data/spec/hamster/set/eql_spec.rb +1 -1
  263. data/spec/hamster/set/eql_spec.rbc +1339 -0
  264. data/spec/hamster/set/exclusion_spec.rb +1 -1
  265. data/spec/hamster/set/exclusion_spec.rbc +837 -0
  266. data/spec/hamster/set/filter_spec.rb +1 -1
  267. data/spec/hamster/set/filter_spec.rbc +1337 -0
  268. data/spec/hamster/set/find_spec.rb +1 -1
  269. data/spec/hamster/set/find_spec.rbc +1039 -0
  270. data/spec/hamster/set/flatten_spec.rb +1 -1
  271. data/spec/hamster/set/flatten_spec.rbc +778 -0
  272. data/spec/hamster/set/grep_spec.rb +1 -1
  273. data/spec/hamster/set/grep_spec.rbc +1217 -0
  274. data/spec/hamster/set/group_by_spec.rb +1 -1
  275. data/spec/hamster/set/group_by_spec.rbc +1308 -0
  276. data/spec/hamster/set/hash_spec.rb +6 -6
  277. data/spec/hamster/set/hash_spec.rbc +655 -0
  278. data/spec/hamster/set/head_spec.rb +17 -14
  279. data/spec/hamster/set/head_spec.rbc +767 -0
  280. data/spec/hamster/set/immutable_spec.rb +1 -1
  281. data/spec/hamster/set/immutable_spec.rbc +251 -0
  282. data/spec/hamster/set/include_spec.rb +1 -1
  283. data/spec/hamster/set/include_spec.rbc +763 -0
  284. data/spec/hamster/set/inspect_spec.rb +2 -2
  285. data/spec/hamster/set/inspect_spec.rbc +704 -0
  286. data/spec/hamster/set/intersection_spec.rb +1 -1
  287. data/spec/hamster/set/intersection_spec.rbc +966 -0
  288. data/spec/hamster/set/join_spec.rb +3 -3
  289. data/spec/hamster/set/join_spec.rbc +1521 -0
  290. data/spec/hamster/set/map_spec.rb +1 -1
  291. data/spec/hamster/set/map_spec.rbc +1351 -0
  292. data/spec/hamster/set/maximum_spec.rb +1 -1
  293. data/spec/hamster/set/maximum_spec.rbc +1274 -0
  294. data/spec/hamster/set/minimum_spec.rb +1 -1
  295. data/spec/hamster/set/minimum_spec.rbc +1274 -0
  296. data/spec/hamster/set/none_spec.rb +1 -1
  297. data/spec/hamster/set/none_spec.rbc +1401 -0
  298. data/spec/hamster/set/one_spec.rb +1 -1
  299. data/spec/hamster/set/one_spec.rbc +1423 -0
  300. data/spec/hamster/set/partition_spec.rb +1 -1
  301. data/spec/hamster/set/partition_spec.rbc +1387 -0
  302. data/spec/hamster/set/product_spec.rb +1 -1
  303. data/spec/hamster/set/product_spec.rbc +580 -0
  304. data/spec/hamster/set/reduce_spec.rb +3 -3
  305. data/spec/hamster/set/reduce_spec.rbc +1724 -0
  306. data/spec/hamster/set/remove_spec.rb +1 -1
  307. data/spec/hamster/set/remove_spec.rbc +1343 -0
  308. data/spec/hamster/set/size_spec.rb +1 -1
  309. data/spec/hamster/set/size_spec.rbc +526 -0
  310. data/spec/hamster/set/sorting_spec.rb +1 -1
  311. data/spec/hamster/set/sorting_spec.rbc +1268 -0
  312. data/spec/hamster/set/subset_spec.rb +1 -1
  313. data/spec/hamster/set/subset_spec.rbc +814 -0
  314. data/spec/hamster/set/sum_spec.rb +1 -1
  315. data/spec/hamster/set/sum_spec.rbc +578 -0
  316. data/spec/hamster/set/superset_spec.rb +1 -1
  317. data/spec/hamster/set/superset_spec.rbc +814 -0
  318. data/spec/hamster/set/to_a_spec.rb +1 -1
  319. data/spec/hamster/set/to_a_spec.rbc +782 -0
  320. data/spec/hamster/set/to_list_spec.rb +1 -1
  321. data/spec/hamster/set/to_list_spec.rbc +880 -0
  322. data/spec/hamster/set/to_set_spec.rb +1 -1
  323. data/spec/hamster/set/to_set_spec.rbc +560 -0
  324. data/spec/hamster/set/union_spec.rb +1 -1
  325. data/spec/hamster/set/union_spec.rbc +944 -0
  326. data/spec/hamster/set/uniq_spec.rb +1 -1
  327. data/spec/hamster/set/uniq_spec.rbc +469 -0
  328. data/spec/hamster/sorter/immutable_spec.rb +1 -1
  329. data/spec/hamster/sorter/immutable_spec.rbc +251 -0
  330. data/spec/hamster/stack/clear_spec.rb +2 -2
  331. data/spec/hamster/stack/clear_spec.rbc +644 -0
  332. data/spec/hamster/stack/construction_spec.rb +1 -1
  333. data/spec/hamster/stack/construction_spec.rbc +888 -0
  334. data/spec/hamster/stack/copying_spec.rb +1 -1
  335. data/spec/hamster/stack/copying_spec.rbc +559 -0
  336. data/spec/hamster/stack/empty_spec.rb +1 -1
  337. data/spec/hamster/stack/empty_spec.rbc +576 -0
  338. data/spec/hamster/stack/eql_spec.rb +1 -1
  339. data/spec/hamster/stack/eql_spec.rbc +1311 -0
  340. data/spec/hamster/stack/immutable_spec.rb +1 -1
  341. data/spec/hamster/stack/immutable_spec.rbc +251 -0
  342. data/spec/hamster/stack/inspect_spec.rb +1 -1
  343. data/spec/hamster/stack/inspect_spec.rbc +591 -0
  344. data/spec/hamster/stack/peek_spec.rb +40 -0
  345. data/spec/hamster/stack/peek_spec.rbc +770 -0
  346. data/spec/hamster/stack/pop_spec.rb +35 -31
  347. data/spec/hamster/stack/pop_spec.rbc +1217 -0
  348. data/spec/hamster/stack/push_spec.rb +2 -2
  349. data/spec/hamster/stack/push_spec.rbc +866 -0
  350. data/spec/hamster/stack/size_spec.rb +1 -1
  351. data/spec/hamster/stack/size_spec.rbc +660 -0
  352. data/spec/hamster/stack/to_a_spec.rb +1 -1
  353. data/spec/hamster/stack/to_a_spec.rbc +809 -0
  354. data/spec/hamster/stack/to_ary.rb +1 -1
  355. data/spec/hamster/stack/to_list_spec.rb +1 -1
  356. data/spec/hamster/stack/to_list_spec.rbc +634 -0
  357. data/spec/hamster/trie/remove_spec.rb +1 -1
  358. data/spec/hamster/trie/remove_spec.rbc +40 -0
  359. data/spec/hamster/tuple/copying_spec.rb +1 -1
  360. data/spec/hamster/tuple/copying_spec.rbc +502 -0
  361. data/spec/hamster/tuple/eql_spec.rb +1 -1
  362. data/spec/hamster/tuple/eql_spec.rbc +1356 -0
  363. data/spec/hamster/tuple/first_spec.rb +1 -1
  364. data/spec/hamster/tuple/first_spec.rbc +409 -0
  365. data/spec/hamster/tuple/immutable_spec.rb +1 -1
  366. data/spec/hamster/tuple/immutable_spec.rbc +251 -0
  367. data/spec/hamster/tuple/inspect_spec.rb +1 -1
  368. data/spec/hamster/tuple/inspect_spec.rbc +409 -0
  369. data/spec/hamster/tuple/last_spec.rb +1 -1
  370. data/spec/hamster/tuple/last_spec.rbc +409 -0
  371. data/spec/hamster/tuple/to_a_spec.rb +1 -1
  372. data/spec/hamster/tuple/to_a_spec.rbc +697 -0
  373. data/spec/hamster/tuple/to_ary_spec.rb +1 -1
  374. data/spec/hamster/tuple/to_ary_spec.rbc +1030 -0
  375. data/spec/hamster/undefined/erase_spec.rb +1 -1
  376. data/spec/hamster/undefined/erase_spec.rbc +880 -0
  377. data/spec/spec_helper.rb +24 -1
  378. data/spec/spec_helper.rbc +639 -0
  379. data/tasks/spec.rbc +206 -0
  380. metadata +201 -4
  381. data/spec/hamster/stack/top_spec.rb +0 -36
@@ -8,10 +8,10 @@ module Hamster
8
8
 
9
9
  extend Forwardable
10
10
 
11
- include Immutable
12
-
13
11
  include Enumerable
14
12
 
13
+ include Immutable
14
+
15
15
  def initialize(collection)
16
16
  @collection = collection
17
17
  end
@@ -0,0 +1,392 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 49
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 7
24
+ 2
25
+ 64
26
+ 47
27
+ 49
28
+ 1
29
+ 1
30
+ 15
31
+ 45
32
+ 3
33
+ 4
34
+ 7
35
+ 5
36
+ 65
37
+ 49
38
+ 6
39
+ 2
40
+ 13
41
+ 45
42
+ 3
43
+ 7
44
+ 12
45
+ 7
46
+ 8
47
+ 12
48
+ 7
49
+ 9
50
+ 12
51
+ 65
52
+ 12
53
+ 49
54
+ 10
55
+ 4
56
+ 15
57
+ 48
58
+ 8
59
+ 15
60
+ 2
61
+ 11
62
+ I
63
+ 6
64
+ I
65
+ 0
66
+ I
67
+ 0
68
+ I
69
+ 0
70
+ n
71
+ p
72
+ 11
73
+ s
74
+ 11
75
+ forwardable
76
+ x
77
+ 7
78
+ require
79
+ s
80
+ 17
81
+ hamster/immutable
82
+ x
83
+ 8
84
+ Rubinius
85
+ n
86
+ x
87
+ 7
88
+ Hamster
89
+ x
90
+ 11
91
+ open_module
92
+ n
93
+ x
94
+ 15
95
+ __module_init__
96
+ M
97
+ 1
98
+ n
99
+ n
100
+ x
101
+ 7
102
+ Hamster
103
+ i
104
+ 32
105
+ 5
106
+ 66
107
+ 45
108
+ 0
109
+ 1
110
+ 7
111
+ 2
112
+ 1
113
+ 65
114
+ 49
115
+ 3
116
+ 3
117
+ 13
118
+ 45
119
+ 0
120
+ 4
121
+ 12
122
+ 7
123
+ 5
124
+ 12
125
+ 7
126
+ 6
127
+ 12
128
+ 65
129
+ 12
130
+ 49
131
+ 7
132
+ 4
133
+ 15
134
+ 48
135
+ 5
136
+ 11
137
+ I
138
+ 6
139
+ I
140
+ 0
141
+ I
142
+ 0
143
+ I
144
+ 0
145
+ n
146
+ p
147
+ 8
148
+ x
149
+ 8
150
+ Rubinius
151
+ n
152
+ x
153
+ 6
154
+ Sorter
155
+ x
156
+ 10
157
+ open_class
158
+ n
159
+ x
160
+ 14
161
+ __class_init__
162
+ M
163
+ 1
164
+ n
165
+ n
166
+ x
167
+ 6
168
+ Sorter
169
+ i
170
+ 54
171
+ 5
172
+ 66
173
+ 5
174
+ 45
175
+ 0
176
+ 1
177
+ 47
178
+ 49
179
+ 2
180
+ 1
181
+ 15
182
+ 5
183
+ 45
184
+ 3
185
+ 4
186
+ 47
187
+ 49
188
+ 5
189
+ 1
190
+ 15
191
+ 5
192
+ 45
193
+ 6
194
+ 7
195
+ 47
196
+ 49
197
+ 5
198
+ 1
199
+ 15
200
+ 45
201
+ 8
202
+ 9
203
+ 7
204
+ 10
205
+ 7
206
+ 11
207
+ 65
208
+ 67
209
+ 48
210
+ 12
211
+ 49
212
+ 13
213
+ 4
214
+ 15
215
+ 5
216
+ 7
217
+ 14
218
+ 7
219
+ 15
220
+ 47
221
+ 49
222
+ 16
223
+ 2
224
+ 11
225
+ I
226
+ 5
227
+ I
228
+ 0
229
+ I
230
+ 0
231
+ I
232
+ 0
233
+ n
234
+ p
235
+ 17
236
+ x
237
+ 11
238
+ Forwardable
239
+ n
240
+ x
241
+ 6
242
+ extend
243
+ x
244
+ 9
245
+ Immutable
246
+ n
247
+ x
248
+ 7
249
+ include
250
+ x
251
+ 10
252
+ Enumerable
253
+ n
254
+ x
255
+ 8
256
+ Rubinius
257
+ n
258
+ x
259
+ 10
260
+ initialize
261
+ M
262
+ 1
263
+ n
264
+ n
265
+ x
266
+ 10
267
+ initialize
268
+ i
269
+ 5
270
+ 20
271
+ 0
272
+ 38
273
+ 0
274
+ 11
275
+ I
276
+ 2
277
+ I
278
+ 1
279
+ I
280
+ 1
281
+ I
282
+ 1
283
+ n
284
+ p
285
+ 1
286
+ x
287
+ 11
288
+ @collection
289
+ p
290
+ 5
291
+ I
292
+ 0
293
+ I
294
+ f
295
+ I
296
+ 0
297
+ I
298
+ 10
299
+ I
300
+ 5
301
+ x
302
+ 59
303
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/sorter.rb
304
+ p
305
+ 1
306
+ x
307
+ 10
308
+ collection
309
+ x
310
+ 17
311
+ method_visibility
312
+ x
313
+ 15
314
+ add_defn_method
315
+ x
316
+ 11
317
+ @collection
318
+ x
319
+ 4
320
+ each
321
+ x
322
+ 13
323
+ def_delegator
324
+ p
325
+ 11
326
+ I
327
+ 2
328
+ I
329
+ 9
330
+ I
331
+ b
332
+ I
333
+ b
334
+ I
335
+ 14
336
+ I
337
+ d
338
+ I
339
+ 1d
340
+ I
341
+ f
342
+ I
343
+ 2c
344
+ I
345
+ 13
346
+ I
347
+ 36
348
+ x
349
+ 59
350
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/sorter.rb
351
+ p
352
+ 0
353
+ x
354
+ 13
355
+ attach_method
356
+ p
357
+ 3
358
+ I
359
+ 2
360
+ I
361
+ 7
362
+ I
363
+ 20
364
+ x
365
+ 59
366
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/sorter.rb
367
+ p
368
+ 0
369
+ x
370
+ 13
371
+ attach_method
372
+ p
373
+ 7
374
+ I
375
+ 0
376
+ I
377
+ 1
378
+ I
379
+ 9
380
+ I
381
+ 3
382
+ I
383
+ 12
384
+ I
385
+ 5
386
+ I
387
+ 31
388
+ x
389
+ 59
390
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/sorter.rb
391
+ p
392
+ 0
@@ -28,14 +28,16 @@ module Hamster
28
28
  end
29
29
  def_delegator :self, :size, :length
30
30
 
31
- def top
31
+ def peek
32
32
  @list.head
33
33
  end
34
+ def_delegator :self, :peek, :top
34
35
 
35
36
  def push(item)
36
37
  transform { @list = @list.cons(item) }
37
38
  end
38
39
  def_delegator :self, :push, :<<
40
+ def_delegator :self, :push, :enqueue
39
41
 
40
42
  def pop
41
43
  list = @list.tail
@@ -45,6 +47,7 @@ module Hamster
45
47
  transform { @list = list }
46
48
  end
47
49
  end
50
+ def_delegator :self, :pop, :dequeue
48
51
 
49
52
  def clear
50
53
  EmptyStack
@@ -0,0 +1,1662 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 58
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 7
24
+ 2
25
+ 64
26
+ 47
27
+ 49
28
+ 1
29
+ 1
30
+ 15
31
+ 5
32
+ 7
33
+ 3
34
+ 64
35
+ 47
36
+ 49
37
+ 1
38
+ 1
39
+ 15
40
+ 45
41
+ 4
42
+ 5
43
+ 7
44
+ 6
45
+ 65
46
+ 49
47
+ 7
48
+ 2
49
+ 13
50
+ 45
51
+ 4
52
+ 8
53
+ 12
54
+ 7
55
+ 9
56
+ 12
57
+ 7
58
+ 10
59
+ 12
60
+ 65
61
+ 12
62
+ 49
63
+ 11
64
+ 4
65
+ 15
66
+ 48
67
+ 9
68
+ 15
69
+ 2
70
+ 11
71
+ I
72
+ 6
73
+ I
74
+ 0
75
+ I
76
+ 0
77
+ I
78
+ 0
79
+ n
80
+ p
81
+ 12
82
+ s
83
+ 11
84
+ forwardable
85
+ x
86
+ 7
87
+ require
88
+ s
89
+ 17
90
+ hamster/immutable
91
+ s
92
+ 12
93
+ hamster/list
94
+ x
95
+ 8
96
+ Rubinius
97
+ n
98
+ x
99
+ 7
100
+ Hamster
101
+ x
102
+ 11
103
+ open_module
104
+ n
105
+ x
106
+ 15
107
+ __module_init__
108
+ M
109
+ 1
110
+ n
111
+ n
112
+ x
113
+ 7
114
+ Hamster
115
+ i
116
+ 73
117
+ 5
118
+ 66
119
+ 45
120
+ 0
121
+ 1
122
+ 7
123
+ 2
124
+ 7
125
+ 3
126
+ 65
127
+ 5
128
+ 49
129
+ 4
130
+ 4
131
+ 15
132
+ 45
133
+ 0
134
+ 5
135
+ 7
136
+ 6
137
+ 1
138
+ 65
139
+ 49
140
+ 7
141
+ 3
142
+ 13
143
+ 45
144
+ 0
145
+ 8
146
+ 12
147
+ 7
148
+ 9
149
+ 12
150
+ 7
151
+ 10
152
+ 12
153
+ 65
154
+ 12
155
+ 49
156
+ 4
157
+ 4
158
+ 15
159
+ 48
160
+ 9
161
+ 15
162
+ 65
163
+ 7
164
+ 11
165
+ 45
166
+ 6
167
+ 12
168
+ 13
169
+ 71
170
+ 13
171
+ 47
172
+ 9
173
+ 67
174
+ 47
175
+ 48
176
+ 14
177
+ 13
178
+ 47
179
+ 48
180
+ 15
181
+ 15
182
+ 8
183
+ 69
184
+ 48
185
+ 13
186
+ 49
187
+ 16
188
+ 2
189
+ 11
190
+ I
191
+ 6
192
+ I
193
+ 0
194
+ I
195
+ 0
196
+ I
197
+ 0
198
+ n
199
+ p
200
+ 17
201
+ x
202
+ 8
203
+ Rubinius
204
+ n
205
+ x
206
+ 5
207
+ stack
208
+ M
209
+ 1
210
+ n
211
+ n
212
+ x
213
+ 5
214
+ stack
215
+ i
216
+ 11
217
+ 20
218
+ 0
219
+ 45
220
+ 0
221
+ 1
222
+ 56
223
+ 2
224
+ 50
225
+ 3
226
+ 1
227
+ 11
228
+ I
229
+ 4
230
+ I
231
+ 1
232
+ I
233
+ 0
234
+ I
235
+ 0
236
+ I
237
+ 0
238
+ p
239
+ 4
240
+ x
241
+ 10
242
+ EmptyStack
243
+ n
244
+ M
245
+ 1
246
+ p
247
+ 2
248
+ x
249
+ 9
250
+ for_block
251
+ t
252
+ n
253
+ x
254
+ 5
255
+ stack
256
+ i
257
+ 19
258
+ 58
259
+ 36
260
+ 37
261
+ 19
262
+ 0
263
+ 15
264
+ 37
265
+ 19
266
+ 1
267
+ 15
268
+ 15
269
+ 20
270
+ 0
271
+ 20
272
+ 1
273
+ 49
274
+ 0
275
+ 1
276
+ 11
277
+ I
278
+ 5
279
+ I
280
+ 2
281
+ I
282
+ 2
283
+ I
284
+ 2
285
+ n
286
+ p
287
+ 1
288
+ x
289
+ 4
290
+ push
291
+ p
292
+ 3
293
+ I
294
+ 0
295
+ I
296
+ 9
297
+ I
298
+ 13
299
+ x
300
+ 58
301
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
302
+ p
303
+ 2
304
+ x
305
+ 5
306
+ stack
307
+ x
308
+ 4
309
+ item
310
+ x
311
+ 6
312
+ reduce
313
+ p
314
+ 5
315
+ I
316
+ 0
317
+ I
318
+ 8
319
+ I
320
+ 0
321
+ I
322
+ 9
323
+ I
324
+ b
325
+ x
326
+ 58
327
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
328
+ p
329
+ 1
330
+ x
331
+ 5
332
+ items
333
+ x
334
+ 13
335
+ attach_method
336
+ n
337
+ x
338
+ 5
339
+ Stack
340
+ x
341
+ 10
342
+ open_class
343
+ n
344
+ x
345
+ 14
346
+ __class_init__
347
+ M
348
+ 1
349
+ n
350
+ n
351
+ x
352
+ 5
353
+ Stack
354
+ i
355
+ 284
356
+ 5
357
+ 66
358
+ 5
359
+ 45
360
+ 0
361
+ 1
362
+ 47
363
+ 49
364
+ 2
365
+ 1
366
+ 15
367
+ 5
368
+ 45
369
+ 3
370
+ 4
371
+ 47
372
+ 49
373
+ 5
374
+ 1
375
+ 15
376
+ 45
377
+ 6
378
+ 7
379
+ 7
380
+ 8
381
+ 7
382
+ 9
383
+ 65
384
+ 67
385
+ 48
386
+ 10
387
+ 49
388
+ 11
389
+ 4
390
+ 15
391
+ 45
392
+ 6
393
+ 12
394
+ 7
395
+ 13
396
+ 7
397
+ 14
398
+ 65
399
+ 67
400
+ 48
401
+ 10
402
+ 49
403
+ 11
404
+ 4
405
+ 15
406
+ 45
407
+ 6
408
+ 15
409
+ 7
410
+ 16
411
+ 7
412
+ 17
413
+ 65
414
+ 67
415
+ 48
416
+ 10
417
+ 49
418
+ 11
419
+ 4
420
+ 15
421
+ 5
422
+ 7
423
+ 18
424
+ 7
425
+ 16
426
+ 7
427
+ 19
428
+ 47
429
+ 49
430
+ 20
431
+ 3
432
+ 15
433
+ 45
434
+ 6
435
+ 21
436
+ 7
437
+ 22
438
+ 7
439
+ 23
440
+ 65
441
+ 67
442
+ 48
443
+ 10
444
+ 49
445
+ 11
446
+ 4
447
+ 15
448
+ 5
449
+ 7
450
+ 18
451
+ 7
452
+ 22
453
+ 7
454
+ 24
455
+ 47
456
+ 49
457
+ 20
458
+ 3
459
+ 15
460
+ 45
461
+ 6
462
+ 25
463
+ 7
464
+ 26
465
+ 7
466
+ 27
467
+ 65
468
+ 67
469
+ 48
470
+ 10
471
+ 49
472
+ 11
473
+ 4
474
+ 15
475
+ 5
476
+ 7
477
+ 18
478
+ 7
479
+ 26
480
+ 7
481
+ 28
482
+ 47
483
+ 49
484
+ 20
485
+ 3
486
+ 15
487
+ 5
488
+ 7
489
+ 18
490
+ 7
491
+ 26
492
+ 7
493
+ 29
494
+ 47
495
+ 49
496
+ 20
497
+ 3
498
+ 15
499
+ 45
500
+ 6
501
+ 30
502
+ 7
503
+ 31
504
+ 7
505
+ 32
506
+ 65
507
+ 67
508
+ 48
509
+ 10
510
+ 49
511
+ 11
512
+ 4
513
+ 15
514
+ 5
515
+ 7
516
+ 18
517
+ 7
518
+ 31
519
+ 7
520
+ 33
521
+ 47
522
+ 49
523
+ 20
524
+ 3
525
+ 15
526
+ 45
527
+ 6
528
+ 34
529
+ 7
530
+ 35
531
+ 7
532
+ 36
533
+ 65
534
+ 67
535
+ 48
536
+ 10
537
+ 49
538
+ 11
539
+ 4
540
+ 15
541
+ 45
542
+ 6
543
+ 37
544
+ 7
545
+ 38
546
+ 7
547
+ 39
548
+ 65
549
+ 67
550
+ 48
551
+ 10
552
+ 49
553
+ 11
554
+ 4
555
+ 15
556
+ 5
557
+ 7
558
+ 18
559
+ 7
560
+ 38
561
+ 7
562
+ 40
563
+ 47
564
+ 49
565
+ 20
566
+ 3
567
+ 15
568
+ 45
569
+ 6
570
+ 41
571
+ 7
572
+ 42
573
+ 7
574
+ 43
575
+ 65
576
+ 67
577
+ 48
578
+ 10
579
+ 49
580
+ 11
581
+ 4
582
+ 15
583
+ 5
584
+ 7
585
+ 18
586
+ 7
587
+ 42
588
+ 7
589
+ 44
590
+ 47
591
+ 49
592
+ 20
593
+ 3
594
+ 15
595
+ 45
596
+ 6
597
+ 45
598
+ 7
599
+ 46
600
+ 7
601
+ 47
602
+ 65
603
+ 67
604
+ 48
605
+ 10
606
+ 49
607
+ 11
608
+ 4
609
+ 15
610
+ 45
611
+ 6
612
+ 48
613
+ 7
614
+ 49
615
+ 7
616
+ 50
617
+ 65
618
+ 67
619
+ 48
620
+ 10
621
+ 49
622
+ 11
623
+ 4
624
+ 15
625
+ 45
626
+ 6
627
+ 51
628
+ 7
629
+ 52
630
+ 7
631
+ 53
632
+ 65
633
+ 67
634
+ 48
635
+ 10
636
+ 49
637
+ 11
638
+ 4
639
+ 11
640
+ I
641
+ 5
642
+ I
643
+ 0
644
+ I
645
+ 0
646
+ I
647
+ 0
648
+ n
649
+ p
650
+ 54
651
+ x
652
+ 11
653
+ Forwardable
654
+ n
655
+ x
656
+ 6
657
+ extend
658
+ x
659
+ 9
660
+ Immutable
661
+ n
662
+ x
663
+ 7
664
+ include
665
+ x
666
+ 8
667
+ Rubinius
668
+ n
669
+ x
670
+ 10
671
+ initialize
672
+ M
673
+ 1
674
+ n
675
+ n
676
+ x
677
+ 10
678
+ initialize
679
+ i
680
+ 6
681
+ 45
682
+ 0
683
+ 1
684
+ 38
685
+ 2
686
+ 11
687
+ I
688
+ 1
689
+ I
690
+ 0
691
+ I
692
+ 0
693
+ I
694
+ 0
695
+ n
696
+ p
697
+ 3
698
+ x
699
+ 9
700
+ EmptyList
701
+ n
702
+ x
703
+ 5
704
+ @list
705
+ p
706
+ 5
707
+ I
708
+ 0
709
+ I
710
+ 12
711
+ I
712
+ 0
713
+ I
714
+ 13
715
+ I
716
+ 6
717
+ x
718
+ 58
719
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
720
+ p
721
+ 0
722
+ x
723
+ 17
724
+ method_visibility
725
+ x
726
+ 15
727
+ add_defn_method
728
+ n
729
+ x
730
+ 6
731
+ empty?
732
+ M
733
+ 1
734
+ n
735
+ n
736
+ x
737
+ 6
738
+ empty?
739
+ i
740
+ 5
741
+ 39
742
+ 0
743
+ 48
744
+ 1
745
+ 11
746
+ I
747
+ 1
748
+ I
749
+ 0
750
+ I
751
+ 0
752
+ I
753
+ 0
754
+ n
755
+ p
756
+ 2
757
+ x
758
+ 5
759
+ @list
760
+ x
761
+ 6
762
+ empty?
763
+ p
764
+ 5
765
+ I
766
+ 0
767
+ I
768
+ 16
769
+ I
770
+ 0
771
+ I
772
+ 17
773
+ I
774
+ 5
775
+ x
776
+ 58
777
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
778
+ p
779
+ 0
780
+ n
781
+ x
782
+ 4
783
+ size
784
+ M
785
+ 1
786
+ n
787
+ n
788
+ x
789
+ 4
790
+ size
791
+ i
792
+ 5
793
+ 39
794
+ 0
795
+ 48
796
+ 1
797
+ 11
798
+ I
799
+ 1
800
+ I
801
+ 0
802
+ I
803
+ 0
804
+ I
805
+ 0
806
+ n
807
+ p
808
+ 2
809
+ x
810
+ 5
811
+ @list
812
+ x
813
+ 4
814
+ size
815
+ p
816
+ 5
817
+ I
818
+ 0
819
+ I
820
+ 1a
821
+ I
822
+ 0
823
+ I
824
+ 1b
825
+ I
826
+ 5
827
+ x
828
+ 58
829
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
830
+ p
831
+ 0
832
+ x
833
+ 4
834
+ self
835
+ x
836
+ 6
837
+ length
838
+ x
839
+ 13
840
+ def_delegator
841
+ n
842
+ x
843
+ 4
844
+ peek
845
+ M
846
+ 1
847
+ n
848
+ n
849
+ x
850
+ 4
851
+ peek
852
+ i
853
+ 5
854
+ 39
855
+ 0
856
+ 48
857
+ 1
858
+ 11
859
+ I
860
+ 1
861
+ I
862
+ 0
863
+ I
864
+ 0
865
+ I
866
+ 0
867
+ n
868
+ p
869
+ 2
870
+ x
871
+ 5
872
+ @list
873
+ x
874
+ 4
875
+ head
876
+ p
877
+ 5
878
+ I
879
+ 0
880
+ I
881
+ 1f
882
+ I
883
+ 0
884
+ I
885
+ 20
886
+ I
887
+ 5
888
+ x
889
+ 58
890
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
891
+ p
892
+ 0
893
+ x
894
+ 3
895
+ top
896
+ n
897
+ x
898
+ 4
899
+ push
900
+ M
901
+ 1
902
+ n
903
+ n
904
+ x
905
+ 4
906
+ push
907
+ i
908
+ 8
909
+ 5
910
+ 56
911
+ 0
912
+ 47
913
+ 50
914
+ 1
915
+ 0
916
+ 11
917
+ I
918
+ 3
919
+ I
920
+ 1
921
+ I
922
+ 1
923
+ I
924
+ 1
925
+ n
926
+ p
927
+ 2
928
+ M
929
+ 1
930
+ p
931
+ 2
932
+ x
933
+ 9
934
+ for_block
935
+ t
936
+ n
937
+ x
938
+ 4
939
+ push
940
+ i
941
+ 11
942
+ 39
943
+ 0
944
+ 21
945
+ 1
946
+ 0
947
+ 49
948
+ 1
949
+ 1
950
+ 38
951
+ 0
952
+ 11
953
+ I
954
+ 3
955
+ I
956
+ 0
957
+ I
958
+ 0
959
+ I
960
+ 0
961
+ I
962
+ -2
963
+ p
964
+ 2
965
+ x
966
+ 5
967
+ @list
968
+ x
969
+ 4
970
+ cons
971
+ p
972
+ 3
973
+ I
974
+ 0
975
+ I
976
+ 25
977
+ I
978
+ b
979
+ x
980
+ 58
981
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
982
+ p
983
+ 0
984
+ x
985
+ 9
986
+ transform
987
+ p
988
+ 5
989
+ I
990
+ 0
991
+ I
992
+ 24
993
+ I
994
+ 0
995
+ I
996
+ 25
997
+ I
998
+ 8
999
+ x
1000
+ 58
1001
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1002
+ p
1003
+ 1
1004
+ x
1005
+ 4
1006
+ item
1007
+ x
1008
+ 2
1009
+ <<
1010
+ x
1011
+ 7
1012
+ enqueue
1013
+ n
1014
+ x
1015
+ 3
1016
+ pop
1017
+ M
1018
+ 1
1019
+ n
1020
+ n
1021
+ x
1022
+ 3
1023
+ pop
1024
+ i
1025
+ 26
1026
+ 39
1027
+ 0
1028
+ 48
1029
+ 1
1030
+ 19
1031
+ 0
1032
+ 15
1033
+ 20
1034
+ 0
1035
+ 48
1036
+ 2
1037
+ 9
1038
+ 18
1039
+ 45
1040
+ 3
1041
+ 4
1042
+ 8
1043
+ 25
1044
+ 5
1045
+ 56
1046
+ 5
1047
+ 47
1048
+ 50
1049
+ 6
1050
+ 0
1051
+ 11
1052
+ I
1053
+ 3
1054
+ I
1055
+ 1
1056
+ I
1057
+ 0
1058
+ I
1059
+ 0
1060
+ n
1061
+ p
1062
+ 7
1063
+ x
1064
+ 5
1065
+ @list
1066
+ x
1067
+ 4
1068
+ tail
1069
+ x
1070
+ 6
1071
+ empty?
1072
+ x
1073
+ 10
1074
+ EmptyStack
1075
+ n
1076
+ M
1077
+ 1
1078
+ p
1079
+ 2
1080
+ x
1081
+ 9
1082
+ for_block
1083
+ t
1084
+ n
1085
+ x
1086
+ 3
1087
+ pop
1088
+ i
1089
+ 6
1090
+ 21
1091
+ 1
1092
+ 0
1093
+ 38
1094
+ 0
1095
+ 11
1096
+ I
1097
+ 2
1098
+ I
1099
+ 0
1100
+ I
1101
+ 0
1102
+ I
1103
+ 0
1104
+ I
1105
+ -2
1106
+ p
1107
+ 1
1108
+ x
1109
+ 5
1110
+ @list
1111
+ p
1112
+ 3
1113
+ I
1114
+ 0
1115
+ I
1116
+ 2f
1117
+ I
1118
+ 6
1119
+ x
1120
+ 58
1121
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1122
+ p
1123
+ 0
1124
+ x
1125
+ 9
1126
+ transform
1127
+ p
1128
+ 11
1129
+ I
1130
+ 0
1131
+ I
1132
+ 2a
1133
+ I
1134
+ 0
1135
+ I
1136
+ 2b
1137
+ I
1138
+ 7
1139
+ I
1140
+ 2c
1141
+ I
1142
+ d
1143
+ I
1144
+ 2d
1145
+ I
1146
+ 12
1147
+ I
1148
+ 2f
1149
+ I
1150
+ 1a
1151
+ x
1152
+ 58
1153
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1154
+ p
1155
+ 1
1156
+ x
1157
+ 4
1158
+ list
1159
+ x
1160
+ 7
1161
+ dequeue
1162
+ n
1163
+ x
1164
+ 5
1165
+ clear
1166
+ M
1167
+ 1
1168
+ n
1169
+ n
1170
+ x
1171
+ 5
1172
+ clear
1173
+ i
1174
+ 4
1175
+ 45
1176
+ 0
1177
+ 1
1178
+ 11
1179
+ I
1180
+ 1
1181
+ I
1182
+ 0
1183
+ I
1184
+ 0
1185
+ I
1186
+ 0
1187
+ n
1188
+ p
1189
+ 2
1190
+ x
1191
+ 10
1192
+ EmptyStack
1193
+ n
1194
+ p
1195
+ 5
1196
+ I
1197
+ 0
1198
+ I
1199
+ 34
1200
+ I
1201
+ 0
1202
+ I
1203
+ 35
1204
+ I
1205
+ 4
1206
+ x
1207
+ 58
1208
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1209
+ p
1210
+ 0
1211
+ n
1212
+ x
1213
+ 4
1214
+ eql?
1215
+ M
1216
+ 1
1217
+ n
1218
+ n
1219
+ x
1220
+ 4
1221
+ eql?
1222
+ i
1223
+ 26
1224
+ 5
1225
+ 20
1226
+ 0
1227
+ 48
1228
+ 0
1229
+ 47
1230
+ 49
1231
+ 1
1232
+ 1
1233
+ 13
1234
+ 9
1235
+ 25
1236
+ 15
1237
+ 39
1238
+ 2
1239
+ 20
1240
+ 0
1241
+ 7
1242
+ 2
1243
+ 49
1244
+ 3
1245
+ 1
1246
+ 49
1247
+ 4
1248
+ 1
1249
+ 11
1250
+ I
1251
+ 4
1252
+ I
1253
+ 1
1254
+ I
1255
+ 1
1256
+ I
1257
+ 1
1258
+ n
1259
+ p
1260
+ 5
1261
+ x
1262
+ 5
1263
+ class
1264
+ x
1265
+ 12
1266
+ instance_of?
1267
+ x
1268
+ 5
1269
+ @list
1270
+ x
1271
+ 21
1272
+ instance_variable_get
1273
+ x
1274
+ 4
1275
+ eql?
1276
+ p
1277
+ 5
1278
+ I
1279
+ 0
1280
+ I
1281
+ 38
1282
+ I
1283
+ 0
1284
+ I
1285
+ 39
1286
+ I
1287
+ 1a
1288
+ x
1289
+ 58
1290
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1291
+ p
1292
+ 1
1293
+ x
1294
+ 5
1295
+ other
1296
+ x
1297
+ 2
1298
+ ==
1299
+ n
1300
+ x
1301
+ 4
1302
+ to_a
1303
+ M
1304
+ 1
1305
+ n
1306
+ n
1307
+ x
1308
+ 4
1309
+ to_a
1310
+ i
1311
+ 5
1312
+ 39
1313
+ 0
1314
+ 48
1315
+ 1
1316
+ 11
1317
+ I
1318
+ 1
1319
+ I
1320
+ 0
1321
+ I
1322
+ 0
1323
+ I
1324
+ 0
1325
+ n
1326
+ p
1327
+ 2
1328
+ x
1329
+ 5
1330
+ @list
1331
+ x
1332
+ 4
1333
+ to_a
1334
+ p
1335
+ 5
1336
+ I
1337
+ 0
1338
+ I
1339
+ 3d
1340
+ I
1341
+ 0
1342
+ I
1343
+ 3e
1344
+ I
1345
+ 5
1346
+ x
1347
+ 58
1348
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1349
+ p
1350
+ 0
1351
+ x
1352
+ 7
1353
+ entries
1354
+ n
1355
+ x
1356
+ 6
1357
+ to_ary
1358
+ M
1359
+ 1
1360
+ n
1361
+ n
1362
+ x
1363
+ 6
1364
+ to_ary
1365
+ i
1366
+ 5
1367
+ 39
1368
+ 0
1369
+ 48
1370
+ 1
1371
+ 11
1372
+ I
1373
+ 1
1374
+ I
1375
+ 0
1376
+ I
1377
+ 0
1378
+ I
1379
+ 0
1380
+ n
1381
+ p
1382
+ 2
1383
+ x
1384
+ 5
1385
+ @list
1386
+ x
1387
+ 6
1388
+ to_ary
1389
+ p
1390
+ 5
1391
+ I
1392
+ 0
1393
+ I
1394
+ 42
1395
+ I
1396
+ 0
1397
+ I
1398
+ 43
1399
+ I
1400
+ 5
1401
+ x
1402
+ 58
1403
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1404
+ p
1405
+ 0
1406
+ n
1407
+ x
1408
+ 7
1409
+ to_list
1410
+ M
1411
+ 1
1412
+ n
1413
+ n
1414
+ x
1415
+ 7
1416
+ to_list
1417
+ i
1418
+ 3
1419
+ 39
1420
+ 0
1421
+ 11
1422
+ I
1423
+ 1
1424
+ I
1425
+ 0
1426
+ I
1427
+ 0
1428
+ I
1429
+ 0
1430
+ n
1431
+ p
1432
+ 1
1433
+ x
1434
+ 5
1435
+ @list
1436
+ p
1437
+ 5
1438
+ I
1439
+ 0
1440
+ I
1441
+ 46
1442
+ I
1443
+ 0
1444
+ I
1445
+ 47
1446
+ I
1447
+ 3
1448
+ x
1449
+ 58
1450
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1451
+ p
1452
+ 0
1453
+ n
1454
+ x
1455
+ 7
1456
+ inspect
1457
+ M
1458
+ 1
1459
+ n
1460
+ n
1461
+ x
1462
+ 7
1463
+ inspect
1464
+ i
1465
+ 5
1466
+ 39
1467
+ 0
1468
+ 48
1469
+ 1
1470
+ 11
1471
+ I
1472
+ 1
1473
+ I
1474
+ 0
1475
+ I
1476
+ 0
1477
+ I
1478
+ 0
1479
+ n
1480
+ p
1481
+ 2
1482
+ x
1483
+ 5
1484
+ @list
1485
+ x
1486
+ 7
1487
+ inspect
1488
+ p
1489
+ 5
1490
+ I
1491
+ 0
1492
+ I
1493
+ 4a
1494
+ I
1495
+ 0
1496
+ I
1497
+ 4b
1498
+ I
1499
+ 5
1500
+ x
1501
+ 58
1502
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1503
+ p
1504
+ 0
1505
+ p
1506
+ 43
1507
+ I
1508
+ 2
1509
+ I
1510
+ e
1511
+ I
1512
+ b
1513
+ I
1514
+ 10
1515
+ I
1516
+ 14
1517
+ I
1518
+ 12
1519
+ I
1520
+ 23
1521
+ I
1522
+ 16
1523
+ I
1524
+ 32
1525
+ I
1526
+ 1a
1527
+ I
1528
+ 41
1529
+ I
1530
+ 1d
1531
+ I
1532
+ 4d
1533
+ I
1534
+ 1f
1535
+ I
1536
+ 5c
1537
+ I
1538
+ 22
1539
+ I
1540
+ 68
1541
+ I
1542
+ 24
1543
+ I
1544
+ 77
1545
+ I
1546
+ 27
1547
+ I
1548
+ 83
1549
+ I
1550
+ 28
1551
+ I
1552
+ 8f
1553
+ I
1554
+ 2a
1555
+ I
1556
+ 9e
1557
+ I
1558
+ 32
1559
+ I
1560
+ aa
1561
+ I
1562
+ 34
1563
+ I
1564
+ b9
1565
+ I
1566
+ 38
1567
+ I
1568
+ c8
1569
+ I
1570
+ 3b
1571
+ I
1572
+ d4
1573
+ I
1574
+ 3d
1575
+ I
1576
+ e3
1577
+ I
1578
+ 40
1579
+ I
1580
+ ef
1581
+ I
1582
+ 42
1583
+ I
1584
+ fe
1585
+ I
1586
+ 46
1587
+ I
1588
+ 10d
1589
+ I
1590
+ 4a
1591
+ I
1592
+ 11c
1593
+ x
1594
+ 58
1595
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1596
+ p
1597
+ 0
1598
+ x
1599
+ 10
1600
+ EmptyStack
1601
+ n
1602
+ x
1603
+ 3
1604
+ new
1605
+ x
1606
+ 8
1607
+ allocate
1608
+ x
1609
+ 10
1610
+ initialize
1611
+ x
1612
+ 9
1613
+ const_set
1614
+ p
1615
+ 7
1616
+ I
1617
+ 2
1618
+ I
1619
+ 8
1620
+ I
1621
+ f
1622
+ I
1623
+ c
1624
+ I
1625
+ 2d
1626
+ I
1627
+ 50
1628
+ I
1629
+ 49
1630
+ x
1631
+ 58
1632
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1633
+ p
1634
+ 0
1635
+ x
1636
+ 13
1637
+ attach_method
1638
+ p
1639
+ 9
1640
+ I
1641
+ 0
1642
+ I
1643
+ 1
1644
+ I
1645
+ 9
1646
+ I
1647
+ 3
1648
+ I
1649
+ 12
1650
+ I
1651
+ 4
1652
+ I
1653
+ 1b
1654
+ I
1655
+ 6
1656
+ I
1657
+ 3a
1658
+ x
1659
+ 58
1660
+ /Users/haruki_zaemon/Projects/hamster/lib/hamster/stack.rb
1661
+ p
1662
+ 0