facets 1.4.5 → 1.7.0

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 (1429) hide show
  1. data/demo/tkxml/helloworld.rb +32 -0
  2. data/demo/tkxml/ui.xml +32 -0
  3. data/doc/AUTHORS +2 -0
  4. data/doc/ChangeLog +92 -337
  5. data/doc/ChangeLog.pre1.5 +337 -0
  6. data/doc/LATEST +41 -0
  7. data/doc/manifest +1209 -0
  8. data/lib/facet/array/op_div.rb +1 -0
  9. data/lib/facet/autoarray.rb +1 -0
  10. data/lib/facet/cut.rb +1 -0
  11. data/lib/facet/enumerable/divide.rb +1 -0
  12. data/lib/facet/eventhook.rb +1 -0
  13. data/lib/facet/hash/diff.rb +1 -0
  14. data/lib/facet/hash/having_aquisition.rb +1 -0
  15. data/lib/facet/hash/having_fallback.rb +1 -0
  16. data/lib/facet/hash/normalize_keys.rb +1 -0
  17. data/lib/facet/hash/op_div.rb +1 -0
  18. data/lib/facet/hash/reverse_merge.rb +1 -0
  19. data/lib/facet/hash/reverse_update.rb +1 -0
  20. data/lib/facet/hash/self/auto.rb +1 -0
  21. data/lib/facet/hash/symbolize_keys.rb +1 -0
  22. data/lib/facet/hash/to_struct.rb +1 -0
  23. data/lib/facet/infinity.rb +1 -0
  24. data/lib/facet/instance_intercept.rb +1 -0
  25. data/lib/facet/integer/each.rb +1 -0
  26. data/lib/facet/integer/of.rb +1 -0
  27. data/lib/facet/kernel/callee.rb +1 -0
  28. data/lib/facet/kernel/deep_clone.rb +1 -0
  29. data/lib/facet/kernel/instance_exec.rb +1 -0
  30. data/lib/facet/kernel/meta.rb +1 -0
  31. data/lib/facet/kernel/object_clone.rb +1 -0
  32. data/lib/facet/kernel/object_dup.rb +1 -0
  33. data/lib/facet/kernel/to_data.rb +1 -0
  34. data/lib/facet/methodfilter.rb +1 -0
  35. data/lib/facet/numeric/distance.rb +1 -0
  36. data/lib/facet/predicate.rb +1 -0
  37. data/lib/facet/rwdelegator.rb +1 -0
  38. data/lib/facet/settings.rb +1 -0
  39. data/lib/facet/string/divide.rb +1 -0
  40. data/lib/facet/symbol/self/generate.rb +1 -0
  41. data/lib/facet/tkxml.rb +1 -0
  42. data/lib/facets.rb +4 -2
  43. data/lib/facets/core/array/op_div.rb +11 -0
  44. data/lib/facets/core/enumerable/divide.rb +20 -0
  45. data/lib/facets/core/hash/diff.rb +8 -0
  46. data/lib/facets/core/hash/having_aquisition.rb +37 -0
  47. data/lib/facets/core/hash/having_fallback.rb +28 -0
  48. data/lib/facets/core/hash/keys_to_s.rb +2 -80
  49. data/lib/facets/core/hash/keys_to_sym.rb +2 -91
  50. data/lib/facets/core/hash/normalize_keys.rb +65 -0
  51. data/lib/facets/core/hash/op_div.rb +8 -0
  52. data/lib/facets/core/hash/reverse_merge.rb +22 -0
  53. data/lib/facets/core/hash/reverse_update.rb +3 -0
  54. data/lib/facets/core/hash/self/auto.rb +28 -0
  55. data/lib/facets/core/hash/stringify_keys.rb +74 -2
  56. data/lib/facets/core/hash/symbolize_keys.rb +87 -0
  57. data/lib/facets/core/hash/to_struct.rb +16 -0
  58. data/lib/facets/core/integer/each.rb +9 -0
  59. data/lib/facets/core/integer/of.rb +37 -0
  60. data/lib/facets/core/kernel/__method__.rb +2 -45
  61. data/lib/facets/core/kernel/callee.rb +46 -0
  62. data/lib/facets/core/kernel/deep_clone.rb +50 -0
  63. data/lib/facets/core/kernel/instance_exec.rb +58 -0
  64. data/lib/facets/core/kernel/meta.rb +21 -0
  65. data/lib/facets/core/kernel/object_clone.rb +4 -0
  66. data/lib/facets/core/kernel/object_dup.rb +2 -0
  67. data/lib/facets/core/kernel/to_data.rb +114 -0
  68. data/lib/facets/core/module/alias_method_chain.rb +1 -1
  69. data/lib/facets/core/module/wrap_method.rb +2 -2
  70. data/lib/facets/core/nilclass/status.rb +4 -4
  71. data/lib/facets/core/numeric/distance.rb +37 -0
  72. data/lib/facets/core/proc/compose.rb +3 -21
  73. data/lib/facets/core/proc/op_mul.rb +51 -2
  74. data/lib/facets/core/proc/to_method.rb +37 -36
  75. data/lib/facets/core/string/divide.rb +43 -0
  76. data/lib/facets/core/string/singular.rb +152 -67
  77. data/lib/facets/core/symbol/self/generate.rb +18 -0
  78. data/lib/facets/more/annattr.rb +4 -4
  79. data/lib/facets/more/annotation.rb +359 -296
  80. data/lib/facets/more/aspects.rb +1 -1
  81. data/lib/facets/more/autoarray.rb +82 -0
  82. data/lib/facets/more/builderobject.rb +5 -3
  83. data/lib/facets/more/command.rb +2 -0
  84. data/lib/facets/more/cut.rb +507 -0
  85. data/lib/facets/more/dictionary.rb +64 -30
  86. data/lib/facets/more/downloader.rb +6 -3
  87. data/lib/facets/more/elementor.rb +26 -16
  88. data/lib/facets/more/eventhook.rb +113 -0
  89. data/lib/facets/more/filelist.rb +8 -0
  90. data/lib/facets/more/functor.rb +28 -11
  91. data/lib/facets/more/hashbuilder.rb +7 -3
  92. data/lib/facets/more/infinity.rb +221 -0
  93. data/{snip/more/aspect.rb → lib/facets/more/instance_intercept.rb} +56 -20
  94. data/lib/facets/more/json.rb +5 -5
  95. data/lib/facets/more/methodfilter.rb +118 -0
  96. data/lib/facets/more/opencascade.rb +35 -66
  97. data/lib/facets/more/openobject.rb +213 -162
  98. data/lib/facets/more/orderedhash.rb +7 -0
  99. data/{snip → lib/facets}/more/predicate.rb +3 -0
  100. data/lib/facets/more/recorder.rb +9 -3
  101. data/lib/facets/more/reference.rb +7 -2
  102. data/lib/facets/more/rexmlbuilder.rb +7 -2
  103. data/lib/facets/more/rwdelegator.rb +51 -0
  104. data/lib/facets/more/settings.rb +219 -0
  105. data/lib/facets/more/snapshot.rb +4 -2
  106. data/lib/facets/more/tagiterator.rb +4 -4
  107. data/lib/facets/more/taskable.rb +5 -5
  108. data/lib/facets/more/tkxml.rb +171 -0
  109. data/meta/projectinfo +38 -0
  110. data/{Reapfile → meta/reapfile} +0 -0
  111. data/meta/task +74 -0
  112. data/meta/tasks/calibre.rb +16 -0
  113. data/meta/version +1 -0
  114. data/test/lib/facets/core/array/test_at_rand.rb +1 -1
  115. data/test/lib/facets/core/array/test_delete_unless.rb +1 -1
  116. data/test/lib/facets/core/array/test_delete_values.rb +1 -1
  117. data/test/lib/facets/core/array/test_delete_values_at.rb +1 -1
  118. data/test/lib/facets/core/array/test_first.rb +1 -1
  119. data/test/lib/facets/core/array/test_head.rb +1 -1
  120. data/test/lib/facets/core/array/test_last_index.rb +1 -1
  121. data/test/lib/facets/core/array/test_merge.rb +1 -1
  122. data/test/lib/facets/core/array/test_mid.rb +1 -1
  123. data/test/lib/facets/core/array/test_middle.rb +1 -1
  124. data/test/lib/facets/core/array/test_op_fetch.rb +1 -1
  125. data/test/lib/facets/core/array/test_op_store.rb +1 -1
  126. data/test/lib/facets/core/array/test_pick.rb +1 -1
  127. data/test/lib/facets/core/array/test_pos.rb +1 -1
  128. data/test/lib/facets/core/array/test_pot.rb +1 -1
  129. data/test/lib/facets/core/array/test_pull.rb +1 -1
  130. data/test/lib/facets/core/array/test_rand_index.rb +1 -1
  131. data/test/lib/facets/core/array/test_rand_subset.rb +1 -1
  132. data/test/lib/facets/core/array/test_range.rb +1 -1
  133. data/test/lib/facets/core/array/test_rotate.rb +1 -1
  134. data/test/lib/facets/core/array/test_select.rb +1 -1
  135. data/test/lib/facets/core/array/test_shuffle.rb +1 -1
  136. data/test/lib/facets/core/array/test_thru.rb +1 -1
  137. data/test/lib/facets/core/array/test_to_b.rb +1 -1
  138. data/test/lib/facets/core/array/test_to_h.rb +1 -1
  139. data/test/lib/facets/core/array/test_to_hash.rb +1 -1
  140. data/test/lib/facets/core/binding/self/test_of_caller.rb +1 -1
  141. data/test/lib/facets/core/binding/test___LINE__.rb +1 -1
  142. data/test/lib/facets/core/binding/test_call_stack.rb +1 -1
  143. data/test/lib/facets/core/binding/test_called.rb +1 -1
  144. data/test/lib/facets/core/binding/test_caller.rb +1 -1
  145. data/test/lib/facets/core/binding/test_defined.rb +1 -1
  146. data/test/lib/facets/core/binding/test_eval.rb +1 -1
  147. data/test/lib/facets/core/binding/test_local_variables.rb +1 -1
  148. data/test/lib/facets/core/binding/test_method_name.rb +1 -1
  149. data/test/lib/facets/core/binding/test_op_fetch.rb +1 -1
  150. data/test/lib/facets/core/binding/test_op_store.rb +1 -1
  151. data/test/lib/facets/core/binding/test_self.rb +1 -1
  152. data/test/lib/facets/core/class/test_cattr.rb +1 -1
  153. data/test/lib/facets/core/class/test_descendents.rb +1 -1
  154. data/test/lib/facets/core/class/test_method_name.rb +1 -1
  155. data/test/lib/facets/core/class/test_remove_descendents.rb +1 -1
  156. data/test/lib/facets/core/class/test_unix_path.rb +1 -1
  157. data/test/lib/facets/core/comparable/test_at_least.rb +1 -1
  158. data/test/lib/facets/core/comparable/test_clip.rb +1 -1
  159. data/test/lib/facets/core/comparable/test_cmp.rb +1 -1
  160. data/test/lib/facets/core/continuation/self/test_create.rb +1 -1
  161. data/test/lib/facets/core/date/test_days_in_month.rb +1 -1
  162. data/test/lib/facets/core/date/test_days_of_month.rb +1 -1
  163. data/test/lib/facets/core/date/test_stamp.rb +1 -1
  164. data/test/lib/facets/core/date/test_to_date.rb +1 -1
  165. data/test/lib/facets/core/date/test_to_s.rb +1 -1
  166. data/test/lib/facets/core/date/test_to_time.rb +1 -1
  167. data/test/lib/facets/core/dir/self/test_ancestor.rb +1 -1
  168. data/test/lib/facets/core/dir/self/test_ascend.rb +1 -1
  169. data/test/lib/facets/core/enumerable/self/test_combinations.rb +1 -1
  170. data/test/lib/facets/core/enumerable/self/test_cross.rb +1 -1
  171. data/test/lib/facets/core/enumerable/test_collect_with_index.rb +1 -1
  172. data/test/lib/facets/core/enumerable/test_commonality.rb +1 -1
  173. data/test/lib/facets/core/enumerable/test_compact_collect.rb +1 -1
  174. data/test/lib/facets/core/enumerable/test_count.rb +1 -1
  175. data/test/lib/facets/core/enumerable/test_cross.rb +1 -1
  176. data/test/lib/facets/core/enumerable/test_each_combination.rb +1 -1
  177. data/test/lib/facets/core/enumerable/test_each_pair.rb +1 -1
  178. data/test/lib/facets/core/enumerable/test_each_slice.rb +1 -1
  179. data/test/lib/facets/core/enumerable/test_each_unique_pair.rb +1 -1
  180. data/test/lib/facets/core/enumerable/test_entropy.rb +1 -1
  181. data/test/lib/facets/core/enumerable/test_every.rb +1 -1
  182. data/test/lib/facets/core/enumerable/test_ew.rb +1 -1
  183. data/test/lib/facets/core/enumerable/test_filter_collect.rb +1 -1
  184. data/test/lib/facets/core/enumerable/test_find_collisions.rb +1 -1
  185. data/test/lib/facets/core/enumerable/test_frequency.rb +1 -1
  186. data/test/lib/facets/core/enumerable/test_graph.rb +1 -1
  187. data/test/lib/facets/core/enumerable/test_ideal_entropy.rb +1 -1
  188. data/test/lib/facets/core/enumerable/test_none.rb +1 -1
  189. data/test/lib/facets/core/enumerable/test_occur.rb +1 -1
  190. data/test/lib/facets/core/enumerable/test_one.rb +1 -1
  191. data/test/lib/facets/core/enumerable/test_op_pow.rb +1 -1
  192. data/test/lib/facets/core/enumerable/test_partition_by.rb +1 -1
  193. data/test/lib/facets/core/enumerable/test_permute.rb +1 -1
  194. data/test/lib/facets/core/enumerable/test_probability.rb +1 -1
  195. data/test/lib/facets/core/enumerable/test_to_h.rb +1 -1
  196. data/test/lib/facets/core/enumerable/test_uniq_by.rb +1 -1
  197. data/test/lib/facets/core/file/self/test_create.rb +1 -1
  198. data/test/lib/facets/core/file/self/test_open_as_string.rb +1 -1
  199. data/test/lib/facets/core/file/self/test_read_list.rb +1 -1
  200. data/test/lib/facets/core/file/self/test_sanitize.rb +1 -1
  201. data/test/lib/facets/core/file/self/test_split_all.rb +1 -1
  202. data/test/lib/facets/core/float/test_round_at.rb +1 -1
  203. data/test/lib/facets/core/float/test_round_to.rb +1 -1
  204. data/test/lib/facets/core/hash/self/test_zipnew.rb +1 -1
  205. data/test/lib/facets/core/hash/test_alias.rb +1 -1
  206. data/test/lib/facets/core/hash/test_assert_has_keys.rb +1 -1
  207. data/test/lib/facets/core/hash/test_assert_has_only_keys.rb +1 -1
  208. data/test/lib/facets/core/hash/test_at.rb +1 -1
  209. data/test/lib/facets/core/hash/test_collate.rb +1 -1
  210. data/test/lib/facets/core/hash/test_each.rb +1 -1
  211. data/test/lib/facets/core/hash/test_each_with_index.rb +1 -1
  212. data/test/lib/facets/core/hash/test_each_with_key.rb +1 -1
  213. data/test/lib/facets/core/hash/test_graph.rb +1 -1
  214. data/test/lib/facets/core/hash/test_has_keys.rb +1 -1
  215. data/test/lib/facets/core/hash/test_has_only_keys.rb +1 -1
  216. data/test/lib/facets/core/hash/test_inverse.rb +1 -1
  217. data/test/lib/facets/core/hash/test_normalize_keys.rb +34 -0
  218. data/test/lib/facets/core/hash/test_op_fetch.rb +1 -1
  219. data/test/lib/facets/core/hash/test_op_lshift.rb +1 -1
  220. data/test/lib/facets/core/hash/test_rand_key.rb +1 -1
  221. data/test/lib/facets/core/hash/test_rand_pair.rb +1 -1
  222. data/test/lib/facets/core/hash/test_rand_value.rb +1 -1
  223. data/test/lib/facets/core/hash/test_replace_each.rb +1 -1
  224. data/test/lib/facets/core/hash/test_shuffle.rb +1 -1
  225. data/test/lib/facets/core/hash/test_slice.rb +1 -1
  226. data/test/lib/facets/core/hash/{test_keys_to_s.rb → test_stringify_keys.rb} +5 -5
  227. data/test/lib/facets/core/hash/test_swap.rb +1 -1
  228. data/test/lib/facets/core/hash/test_swapkey.rb +1 -1
  229. data/test/lib/facets/core/hash/{test_keys_to_sym.rb → test_symbolize_keys.rb} +5 -5
  230. data/test/lib/facets/core/hash/test_to_h.rb +1 -1
  231. data/test/lib/facets/core/hash/test_to_ostruct.rb +1 -1
  232. data/test/lib/facets/core/hash/test_to_ostruct_recurse.rb +1 -1
  233. data/test/lib/facets/core/hash/test_traverse.rb +1 -1
  234. data/test/lib/facets/core/hash/test_update_each.rb +1 -1
  235. data/test/lib/facets/core/hash/test_update_keys.rb +1 -1
  236. data/test/lib/facets/core/hash/test_update_values.rb +1 -1
  237. data/test/lib/facets/core/hash/test_weave.rb +1 -1
  238. data/test/lib/facets/core/integer/test_factorial.rb +1 -1
  239. data/test/lib/facets/core/integer/test_multiple.rb +1 -1
  240. data/test/lib/facets/core/integer/test_of.rb +28 -0
  241. data/test/lib/facets/core/integer/test_ordinal.rb +1 -1
  242. data/test/lib/facets/core/integer/test_times_collect.rb +1 -1
  243. data/test/lib/facets/core/kernel/test___class__.rb +1 -1
  244. data/test/lib/facets/core/kernel/test___method__.rb +1 -1
  245. data/test/lib/facets/core/kernel/test_as.rb +1 -1
  246. data/test/lib/facets/core/kernel/test_assign_from.rb +1 -1
  247. data/test/lib/facets/core/kernel/test_assign_with.rb +1 -1
  248. data/test/lib/facets/core/kernel/test_bool.rb +1 -1
  249. data/test/lib/facets/core/kernel/test_bug.rb +1 -1
  250. data/test/lib/facets/core/kernel/test_call_stack.rb +1 -1
  251. data/test/lib/facets/core/kernel/test_called.rb +1 -1
  252. data/test/lib/facets/core/kernel/test_callee.rb +26 -0
  253. data/test/lib/facets/core/kernel/test_constant.rb +1 -1
  254. data/test/lib/facets/core/kernel/test_copy.rb +1 -1
  255. data/test/lib/facets/core/kernel/test_deep_copy.rb +1 -1
  256. data/test/lib/facets/core/kernel/test_demo.rb +1 -1
  257. data/test/lib/facets/core/kernel/test_fn.rb +1 -1
  258. data/test/lib/facets/core/kernel/test_get_by_id.rb +1 -1
  259. data/test/lib/facets/core/kernel/test_here.rb +1 -1
  260. data/test/lib/facets/core/kernel/test_in.rb +1 -1
  261. data/test/lib/facets/core/kernel/test_instance_exec.rb +52 -0
  262. data/test/lib/facets/core/kernel/test_maybe.rb +1 -1
  263. data/test/lib/facets/core/kernel/test_metaclass.rb +1 -1
  264. data/test/lib/facets/core/kernel/test_method.rb +1 -1
  265. data/test/lib/facets/core/kernel/test_methods.rb +1 -1
  266. data/test/lib/facets/core/kernel/test_new.rb +1 -1
  267. data/test/lib/facets/core/kernel/test_object_class.rb +1 -1
  268. data/test/lib/facets/core/kernel/test_object_hexid.rb +1 -1
  269. data/test/lib/facets/core/kernel/test_quaclass.rb +1 -1
  270. data/test/lib/facets/core/kernel/test_require_all.rb +1 -1
  271. data/test/lib/facets/core/kernel/test_require_esc.rb +1 -1
  272. data/test/lib/facets/core/kernel/test_require_facet.rb +1 -1
  273. data/test/lib/facets/core/kernel/test_resc.rb +1 -1
  274. data/test/lib/facets/core/kernel/test_returning.rb +1 -1
  275. data/test/lib/facets/core/kernel/test_send_as.rb +1 -1
  276. data/test/lib/facets/core/kernel/test_set_from.rb +1 -1
  277. data/test/lib/facets/core/kernel/test_set_with.rb +1 -1
  278. data/test/lib/facets/core/kernel/test_silently.rb +1 -1
  279. data/test/lib/facets/core/kernel/test_singleton.rb +1 -1
  280. data/test/lib/facets/core/kernel/test_singleton_class.rb +1 -1
  281. data/test/lib/facets/core/kernel/test_superior.rb +1 -1
  282. data/test/lib/facets/core/kernel/test_supermethod.rb +1 -1
  283. data/test/lib/facets/core/kernel/test_this.rb +1 -1
  284. data/test/lib/facets/core/kernel/test_to_b.rb +1 -1
  285. data/test/lib/facets/core/kernel/test_to_bool.rb +1 -1
  286. data/test/lib/facets/core/kernel/test_to_data.rb +59 -0
  287. data/test/lib/facets/core/kernel/test_uri.rb +1 -1
  288. data/test/lib/facets/core/kernel/test_val.rb +1 -1
  289. data/test/lib/facets/core/kernel/test_with_accessor.rb +1 -1
  290. data/test/lib/facets/core/matchdata/test_match.rb +1 -1
  291. data/test/lib/facets/core/matchdata/test_matchtree.rb +1 -1
  292. data/test/lib/facets/core/module/test_abstract.rb +1 -1
  293. data/test/lib/facets/core/module/test_alias_module_function.rb +1 -1
  294. data/test/lib/facets/core/module/test_ancestor.rb +1 -1
  295. data/test/lib/facets/core/module/test_basename.rb +1 -1
  296. data/test/lib/facets/core/module/test_by_name.rb +1 -1
  297. data/test/lib/facets/core/module/test_class_extension.rb +1 -1
  298. data/test/lib/facets/core/module/test_clone_using.rb +1 -1
  299. data/test/lib/facets/core/module/test_dirname.rb +1 -1
  300. data/test/lib/facets/core/module/test_equate_on.rb +1 -1
  301. data/test/lib/facets/core/module/test_include_as.rb +1 -1
  302. data/test/lib/facets/core/module/test_initializer.rb +1 -1
  303. data/test/lib/facets/core/module/test_instance_methods.rb +1 -1
  304. data/test/lib/facets/core/module/test_integrate.rb +1 -1
  305. data/test/lib/facets/core/module/test_memoize.rb +1 -1
  306. data/test/lib/facets/core/module/test_modspace.rb +1 -1
  307. data/test/lib/facets/core/module/test_namespace.rb +1 -1
  308. data/test/lib/facets/core/module/test_nesting.rb +1 -1
  309. data/test/lib/facets/core/module/test_nodef.rb +1 -1
  310. data/test/lib/facets/core/module/test_on_included.rb +1 -1
  311. data/test/lib/facets/core/module/test_redef.rb +1 -1
  312. data/test/lib/facets/core/module/test_redefine_method.rb +1 -1
  313. data/test/lib/facets/core/module/test_redirect.rb +1 -1
  314. data/test/lib/facets/core/module/test_redirect_method.rb +1 -1
  315. data/test/lib/facets/core/module/test_remove.rb +1 -1
  316. data/test/lib/facets/core/module/test_rename.rb +1 -1
  317. data/test/lib/facets/core/module/test_rename_method.rb +1 -1
  318. data/test/lib/facets/core/module/test_revisal.rb +1 -1
  319. data/test/lib/facets/core/module/test_shadow_method.rb +1 -1
  320. data/test/lib/facets/core/module/test_sort_on.rb +1 -1
  321. data/test/lib/facets/core/module/test_this.rb +1 -1
  322. data/test/lib/facets/core/module/test_wrap.rb +1 -1
  323. data/test/lib/facets/core/module/test_wrap_method.rb +1 -1
  324. data/test/lib/facets/core/nilclass/test_blank.rb +1 -1
  325. data/test/lib/facets/core/nilclass/test_empty.rb +1 -1
  326. data/test/lib/facets/core/nilclass/test_include.rb +1 -1
  327. data/test/lib/facets/core/nilclass/test_op_fetch.rb +1 -1
  328. data/test/lib/facets/core/nilclass/test_size.rb +1 -1
  329. data/test/lib/facets/core/nilclass/test_to_h.rb +1 -1
  330. data/test/lib/facets/core/numeric/test_approx.rb +1 -1
  331. data/test/lib/facets/core/numeric/test_ceil_multiple.rb +1 -1
  332. data/test/lib/facets/core/numeric/test_distance.rb +28 -0
  333. data/test/lib/facets/core/numeric/test_succ.rb +1 -1
  334. data/test/lib/facets/core/numeric/test_to_b.rb +1 -1
  335. data/test/lib/facets/core/ostruct/test___merge__.rb +1 -1
  336. data/test/lib/facets/core/ostruct/test___update__.rb +1 -1
  337. data/test/lib/facets/core/ostruct/test_op_fetch.rb +1 -1
  338. data/test/lib/facets/core/ostruct/test_op_store.rb +1 -1
  339. data/test/lib/facets/core/proc/test_compose.rb +1 -8
  340. data/test/lib/facets/core/proc/test_op_mul.rb +34 -0
  341. data/test/lib/facets/core/proc/test_to_method.rb +15 -2
  342. data/test/lib/facets/core/range/test_to_r.rb +1 -1
  343. data/test/lib/facets/core/range/test_to_range.rb +1 -1
  344. data/test/lib/facets/core/range/test_umbrella.rb +1 -1
  345. data/test/lib/facets/core/range/test_within.rb +1 -1
  346. data/test/lib/facets/core/regexp/test_arity.rb +1 -1
  347. data/test/lib/facets/core/regexp/test_to_re.rb +1 -1
  348. data/test/lib/facets/core/regexp/test_to_regexp.rb +1 -1
  349. data/test/lib/facets/core/string/self/test_interpolate.rb +1 -1
  350. data/test/lib/facets/core/string/self/test_patterns.rb +1 -1
  351. data/test/lib/facets/core/string/self/test_rand_letter.rb +1 -1
  352. data/test/lib/facets/core/string/test_align_center.rb +1 -1
  353. data/test/lib/facets/core/string/test_at_rand.rb +1 -1
  354. data/test/lib/facets/core/string/test_basename.rb +1 -1
  355. data/test/lib/facets/core/string/test_blank.rb +1 -1
  356. data/test/lib/facets/core/string/test_bracket.rb +1 -1
  357. data/test/lib/facets/core/string/test_camelcase.rb +1 -1
  358. data/test/lib/facets/core/string/test_camelize.rb +1 -1
  359. data/test/lib/facets/core/string/test_capitalized.rb +1 -1
  360. data/test/lib/facets/core/string/test_chars.rb +1 -1
  361. data/test/lib/facets/core/string/test_cmp.rb +1 -1
  362. data/test/lib/facets/core/string/test_demodulize.rb +1 -1
  363. data/test/lib/facets/core/string/test_divide.rb +29 -0
  364. data/test/lib/facets/core/string/test_downcase.rb +1 -1
  365. data/test/lib/facets/core/string/test_dresner.rb +1 -1
  366. data/test/lib/facets/core/string/test_each_char.rb +1 -1
  367. data/test/lib/facets/core/string/test_each_word.rb +1 -1
  368. data/test/lib/facets/core/string/test_first.rb +1 -1
  369. data/test/lib/facets/core/string/test_fold.rb +1 -1
  370. data/test/lib/facets/core/string/test_humanize.rb +1 -1
  371. data/test/lib/facets/core/string/test_indent.rb +1 -1
  372. data/test/lib/facets/core/string/test_index_all.rb +1 -1
  373. data/test/lib/facets/core/string/test_last.rb +1 -1
  374. data/test/lib/facets/core/string/test_line_wrap.rb +1 -1
  375. data/test/lib/facets/core/string/test_lines.rb +1 -1
  376. data/test/lib/facets/core/string/test_lowercase.rb +1 -1
  377. data/test/lib/facets/core/string/test_margin.rb +1 -1
  378. data/test/lib/facets/core/string/test_methodize.rb +1 -1
  379. data/test/lib/facets/core/string/test_modulize.rb +1 -1
  380. data/test/lib/facets/core/string/test_mscan.rb +1 -1
  381. data/test/lib/facets/core/string/test_natcmp.rb +1 -1
  382. data/test/lib/facets/core/string/test_nchar.rb +1 -1
  383. data/test/lib/facets/core/string/test_pathize.rb +1 -1
  384. data/test/lib/facets/core/string/test_pop.rb +1 -1
  385. data/test/lib/facets/core/string/test_pot.rb +1 -1
  386. data/test/lib/facets/core/string/test_push.rb +1 -1
  387. data/test/lib/facets/core/string/test_quote.rb +1 -1
  388. data/test/lib/facets/core/string/test_rand_byte.rb +1 -1
  389. data/test/lib/facets/core/string/test_rand_index.rb +1 -1
  390. data/test/lib/facets/core/string/test_range.rb +1 -1
  391. data/test/lib/facets/core/string/test_range_all.rb +1 -1
  392. data/test/lib/facets/core/string/test_range_of_line.rb +1 -1
  393. data/test/lib/facets/core/string/test_regesc.rb +1 -1
  394. data/test/lib/facets/core/string/test_shatter.rb +1 -1
  395. data/test/lib/facets/core/string/test_shift.rb +1 -1
  396. data/test/lib/facets/core/string/test_shuffle.rb +1 -1
  397. data/test/lib/facets/core/string/test_similarity.rb +1 -1
  398. data/test/lib/facets/core/string/test_singular.rb +62 -8
  399. data/test/lib/facets/core/string/test_soundex.rb +1 -1
  400. data/test/lib/facets/core/string/test_succ.rb +1 -1
  401. data/test/lib/facets/core/string/test_to_a.rb +1 -1
  402. data/test/lib/facets/core/string/test_to_b.rb +1 -1
  403. data/test/lib/facets/core/string/test_to_const.rb +1 -1
  404. data/test/lib/facets/core/string/test_to_date.rb +1 -1
  405. data/test/lib/facets/core/string/test_to_proc.rb +1 -1
  406. data/test/lib/facets/core/string/test_to_re.rb +1 -1
  407. data/test/lib/facets/core/string/test_to_time.rb +1 -1
  408. data/test/lib/facets/core/string/test_unix_crypt.rb +1 -1
  409. data/test/lib/facets/core/string/test_unpack.rb +1 -1
  410. data/test/lib/facets/core/string/test_unshift.rb +1 -1
  411. data/test/lib/facets/core/string/test_upcase.rb +1 -1
  412. data/test/lib/facets/core/string/test_whitespace.rb +1 -1
  413. data/test/lib/facets/core/string/test_word_filter.rb +1 -1
  414. data/test/lib/facets/core/string/test_word_wrap.rb +1 -1
  415. data/test/lib/facets/core/string/test_words.rb +1 -1
  416. data/test/lib/facets/core/symbol/test_camelcase.rb +1 -1
  417. data/test/lib/facets/core/symbol/test_camelize.rb +1 -1
  418. data/test/lib/facets/core/symbol/test_capitalize.rb +1 -1
  419. data/test/lib/facets/core/symbol/test_capitalized.rb +1 -1
  420. data/test/lib/facets/core/symbol/test_downcase.rb +1 -1
  421. data/test/lib/facets/core/symbol/test_not.rb +1 -1
  422. data/test/lib/facets/core/symbol/test_pad.rb +1 -1
  423. data/test/lib/facets/core/symbol/test_succ.rb +1 -1
  424. data/test/lib/facets/core/symbol/test_to_const.rb +1 -1
  425. data/test/lib/facets/core/symbol/test_to_proc.rb +1 -1
  426. data/test/lib/facets/core/symbol/test_to_str.rb +1 -1
  427. data/test/lib/facets/core/symbol/test_underscore.rb +1 -1
  428. data/test/lib/facets/core/symbol/test_upcase.rb +1 -1
  429. data/test/lib/facets/core/time/test_change.rb +1 -1
  430. data/test/lib/facets/core/time/test_elapse.rb +1 -1
  431. data/test/lib/facets/core/time/test_stamp.rb +1 -1
  432. data/test/lib/facets/core/time/test_to_date.rb +1 -1
  433. data/test/lib/facets/core/time/test_to_s.rb +1 -1
  434. data/test/lib/facets/core/time/test_to_time.rb +1 -1
  435. data/test/lib/facets/more/test_annattr.rb +1 -1
  436. data/test/lib/facets/more/test_annotation.rb +225 -113
  437. data/test/lib/facets/more/test_ansicode.rb +1 -1
  438. data/test/lib/facets/more/test_association.rb +1 -1
  439. data/test/lib/facets/more/test_autoarray.rb +32 -0
  440. data/test/lib/facets/more/test_basicobject.rb +1 -1
  441. data/test/lib/facets/more/test_bbcode.rb +1 -1
  442. data/test/lib/facets/more/test_binaryreader.rb +1 -1
  443. data/test/lib/facets/more/test_bitmask.rb +1 -1
  444. data/test/lib/facets/more/test_bytes.rb +1 -1
  445. data/test/lib/facets/more/test_classmethods.rb +1 -1
  446. data/test/lib/facets/more/test_command.rb +1 -1
  447. data/test/lib/facets/more/test_coroutine.rb +1 -1
  448. data/test/lib/facets/more/test_crypt.rb +1 -1
  449. data/test/lib/facets/more/test_cut.rb +198 -0
  450. data/test/lib/facets/more/test_dictionary.rb +1 -1
  451. data/test/lib/facets/more/test_elementor.rb +5 -1
  452. data/test/lib/facets/more/test_enumerablepass.rb +1 -1
  453. data/test/lib/facets/more/test_floatstring.rb +1 -1
  454. data/test/lib/facets/more/test_functor.rb +1 -1
  455. data/test/lib/facets/more/test_htmlbuilder.rb +1 -1
  456. data/test/lib/facets/more/test_infinity.rb +50 -0
  457. data/test/lib/facets/more/test_inheritor.rb +1 -1
  458. data/test/lib/facets/more/test_instance_intercept.rb +50 -0
  459. data/test/lib/facets/more/test_interval.rb +1 -1
  460. data/test/lib/facets/more/test_json.rb +1 -1
  461. data/test/lib/facets/more/test_lisp.rb +1 -1
  462. data/test/lib/facets/more/test_lisp_format.rb +1 -1
  463. data/test/lib/facets/more/test_lrucache.rb +1 -1
  464. data/test/lib/facets/more/test_mathconstants.rb +1 -1
  465. data/test/lib/facets/more/test_methodfilter.rb +45 -0
  466. data/test/lib/facets/more/test_methodprobe.rb +1 -1
  467. data/test/lib/facets/more/test_multipliers.rb +1 -1
  468. data/test/lib/facets/more/test_multiton.rb +1 -1
  469. data/test/lib/facets/more/test_nackclass.rb +1 -1
  470. data/test/lib/facets/more/test_nilcomparable.rb +1 -1
  471. data/test/lib/facets/more/test_opencascade.rb +24 -15
  472. data/test/lib/facets/more/test_openobject.rb +70 -22
  473. data/test/lib/facets/more/test_overload.rb +1 -1
  474. data/test/lib/facets/more/test_paramix.rb +1 -1
  475. data/test/lib/facets/more/test_pqueue.rb +1 -1
  476. data/test/lib/facets/more/test_predicate.rb +79 -0
  477. data/test/lib/facets/more/test_preinitialize.rb +1 -1
  478. data/test/lib/facets/more/test_promoteself.rb +1 -1
  479. data/test/lib/facets/more/test_recorder.rb +1 -1
  480. data/test/lib/facets/more/test_snapshot.rb +1 -1
  481. data/test/lib/facets/more/test_statichash.rb +1 -1
  482. data/test/lib/facets/more/test_syncarray.rb +1 -1
  483. data/test/lib/facets/more/test_synchash.rb +1 -1
  484. data/test/lib/facets/more/test_tagiterator.rb +1 -1
  485. data/test/lib/facets/more/test_taskable.rb +1 -1
  486. data/test/lib/facets/more/test_timer.rb +1 -1
  487. data/test/lib/facets/more/test_times.rb +1 -1
  488. data/test/lib/facets/more/test_tuple.rb +1 -1
  489. data/test/lib/facets/more/test_typecast.rb +1 -1
  490. data/test/lib/facets/more/test_uninheritable.rb +1 -1
  491. data/test/lib/facets/more/test_units.rb +1 -1
  492. data/test/lib/facets/more/test_xmlbuilder.rb +1 -1
  493. data/test/lib/facets/more/test_xmlhelper.rb +1 -1
  494. data/test/lib/facets/more/test_xoxo.rb +1 -1
  495. data/test/lib/facets/more/test_yamlstruct.rb +1 -1
  496. metadata +1147 -2081
  497. data/doc/api/core/classes/Array.html +0 -1356
  498. data/doc/api/core/classes/Binding.html +0 -538
  499. data/doc/api/core/classes/Class.html +0 -476
  500. data/doc/api/core/classes/Comparable.html +0 -231
  501. data/doc/api/core/classes/Config.html +0 -120
  502. data/doc/api/core/classes/Continuation.html +0 -168
  503. data/doc/api/core/classes/Date.html +0 -219
  504. data/doc/api/core/classes/Dir.html +0 -208
  505. data/doc/api/core/classes/Enumerable.html +0 -1462
  506. data/doc/api/core/classes/FalseClass.html +0 -115
  507. data/doc/api/core/classes/File.html +0 -383
  508. data/doc/api/core/classes/FileUtils.html +0 -468
  509. data/doc/api/core/classes/Float.html +0 -157
  510. data/doc/api/core/classes/Gem.html +0 -150
  511. data/doc/api/core/classes/Hash.html +0 -1627
  512. data/doc/api/core/classes/Integer.html +0 -353
  513. data/doc/api/core/classes/Kernal.html +0 -86
  514. data/doc/api/core/classes/Kernel.html +0 -2010
  515. data/doc/api/core/classes/Logger.html +0 -157
  516. data/doc/api/core/classes/MatchData.html +0 -195
  517. data/doc/api/core/classes/Module.html +0 -1812
  518. data/doc/api/core/classes/NackClass.html +0 -92
  519. data/doc/api/core/classes/NilClass.html +0 -385
  520. data/doc/api/core/classes/Numeric.html +0 -306
  521. data/doc/api/core/classes/Object.html +0 -332
  522. data/doc/api/core/classes/OpenStruct.html +0 -315
  523. data/doc/api/core/classes/Pathname.html +0 -154
  524. data/doc/api/core/classes/Proc.html +0 -154
  525. data/doc/api/core/classes/Range.html +0 -235
  526. data/doc/api/core/classes/Regexp.html +0 -185
  527. data/doc/api/core/classes/ScriptBug.html +0 -92
  528. data/doc/api/core/classes/String.html +0 -3250
  529. data/doc/api/core/classes/Symbol.html +0 -463
  530. data/doc/api/core/classes/Time.html +0 -307
  531. data/doc/api/core/classes/TrueClass.html +0 -115
  532. data/doc/api/core/classes/UnboundMethod.html +0 -121
  533. data/doc/api/core/created.rid +0 -1
  534. data/doc/api/core/files/COPYING.html +0 -517
  535. data/doc/api/core/files/README.html +0 -386
  536. data/doc/api/core/files/lib/facets/core/all_rb.html +0 -96
  537. data/doc/api/core/files/lib/facets/core/array/at_rand_rb.html +0 -92
  538. data/doc/api/core/files/lib/facets/core/array/body_rb.html +0 -100
  539. data/doc/api/core/files/lib/facets/core/array/delete_unless_rb.html +0 -92
  540. data/doc/api/core/files/lib/facets/core/array/delete_values_at_rb.html +0 -92
  541. data/doc/api/core/files/lib/facets/core/array/delete_values_rb.html +0 -92
  542. data/doc/api/core/files/lib/facets/core/array/each_with_key_rb.html +0 -92
  543. data/doc/api/core/files/lib/facets/core/array/first_rb.html +0 -96
  544. data/doc/api/core/files/lib/facets/core/array/foot_rb.html +0 -100
  545. data/doc/api/core/files/lib/facets/core/array/head_rb.html +0 -92
  546. data/doc/api/core/files/lib/facets/core/array/join_sentence_rb.html +0 -92
  547. data/doc/api/core/files/lib/facets/core/array/last_index_rb.html +0 -92
  548. data/doc/api/core/files/lib/facets/core/array/last_rb.html +0 -100
  549. data/doc/api/core/files/lib/facets/core/array/merge_rb.html +0 -92
  550. data/doc/api/core/files/lib/facets/core/array/mid_rb.html +0 -92
  551. data/doc/api/core/files/lib/facets/core/array/middle_rb.html +0 -92
  552. data/doc/api/core/files/lib/facets/core/array/op_fetch_rb.html +0 -92
  553. data/doc/api/core/files/lib/facets/core/array/op_mod_rb.html +0 -92
  554. data/doc/api/core/files/lib/facets/core/array/op_store_rb.html +0 -96
  555. data/doc/api/core/files/lib/facets/core/array/pick_rb.html +0 -92
  556. data/doc/api/core/files/lib/facets/core/array/pos_rb.html +0 -92
  557. data/doc/api/core/files/lib/facets/core/array/pot_rb.html +0 -92
  558. data/doc/api/core/files/lib/facets/core/array/pull_rb.html +0 -92
  559. data/doc/api/core/files/lib/facets/core/array/rand_index_rb.html +0 -92
  560. data/doc/api/core/files/lib/facets/core/array/rand_subset_rb.html +0 -92
  561. data/doc/api/core/files/lib/facets/core/array/range_rb.html +0 -92
  562. data/doc/api/core/files/lib/facets/core/array/rotate_rb.html +0 -92
  563. data/doc/api/core/files/lib/facets/core/array/select_rb.html +0 -92
  564. data/doc/api/core/files/lib/facets/core/array/shuffle_rb.html +0 -92
  565. data/doc/api/core/files/lib/facets/core/array/store_rb.html +0 -92
  566. data/doc/api/core/files/lib/facets/core/array/tail_rb.html +0 -100
  567. data/doc/api/core/files/lib/facets/core/array/thru_rb.html +0 -92
  568. data/doc/api/core/files/lib/facets/core/array/to_b_rb.html +0 -92
  569. data/doc/api/core/files/lib/facets/core/array/to_h_rb.html +0 -92
  570. data/doc/api/core/files/lib/facets/core/array/to_hash_rb.html +0 -92
  571. data/doc/api/core/files/lib/facets/core/array/unzip_rb.html +0 -92
  572. data/doc/api/core/files/lib/facets/core/binding/__DIR___rb.html +0 -100
  573. data/doc/api/core/files/lib/facets/core/binding/__FILE___rb.html +0 -100
  574. data/doc/api/core/files/lib/facets/core/binding/__LINE___rb.html +0 -96
  575. data/doc/api/core/files/lib/facets/core/binding/call_stack_rb.html +0 -97
  576. data/doc/api/core/files/lib/facets/core/binding/called_rb.html +0 -96
  577. data/doc/api/core/files/lib/facets/core/binding/caller_rb.html +0 -96
  578. data/doc/api/core/files/lib/facets/core/binding/defined_rb.html +0 -96
  579. data/doc/api/core/files/lib/facets/core/binding/eval_rb.html +0 -92
  580. data/doc/api/core/files/lib/facets/core/binding/local_variables_rb.html +0 -96
  581. data/doc/api/core/files/lib/facets/core/binding/method_name_rb.html +0 -96
  582. data/doc/api/core/files/lib/facets/core/binding/op_fetch_rb.html +0 -97
  583. data/doc/api/core/files/lib/facets/core/binding/op_store_rb.html +0 -97
  584. data/doc/api/core/files/lib/facets/core/binding/self/of_caller_rb.html +0 -96
  585. data/doc/api/core/files/lib/facets/core/binding/self_rb.html +0 -96
  586. data/doc/api/core/files/lib/facets/core/binding_rb.html +0 -109
  587. data/doc/api/core/files/lib/facets/core/class/by_name_rb.html +0 -96
  588. data/doc/api/core/files/lib/facets/core/class/cattr_accessor_rb.html +0 -100
  589. data/doc/api/core/files/lib/facets/core/class/cattr_rb.html +0 -92
  590. data/doc/api/core/files/lib/facets/core/class/cattr_reader_rb.html +0 -100
  591. data/doc/api/core/files/lib/facets/core/class/cattr_writer_rb.html +0 -100
  592. data/doc/api/core/files/lib/facets/core/class/descendents_rb.html +0 -92
  593. data/doc/api/core/files/lib/facets/core/class/method_name_rb.html +0 -92
  594. data/doc/api/core/files/lib/facets/core/class/remove_descendents_rb.html +0 -96
  595. data/doc/api/core/files/lib/facets/core/class/remove_subclasses_rb.html +0 -100
  596. data/doc/api/core/files/lib/facets/core/class/subclasses_rb.html +0 -100
  597. data/doc/api/core/files/lib/facets/core/class/to_proc_rb.html +0 -98
  598. data/doc/api/core/files/lib/facets/core/class/unix_path_rb.html +0 -92
  599. data/doc/api/core/files/lib/facets/core/comparable/at_least_rb.html +0 -92
  600. data/doc/api/core/files/lib/facets/core/comparable/at_most_rb.html +0 -100
  601. data/doc/api/core/files/lib/facets/core/comparable/cap_rb.html +0 -100
  602. data/doc/api/core/files/lib/facets/core/comparable/clip_rb.html +0 -92
  603. data/doc/api/core/files/lib/facets/core/comparable/cmp_rb.html +0 -92
  604. data/doc/api/core/files/lib/facets/core/config/datadir_rb.html +0 -92
  605. data/doc/api/core/files/lib/facets/core/continuation/self/create_rb.html +0 -148
  606. data/doc/api/core/files/lib/facets/core/date/days_in_month_rb.html +0 -96
  607. data/doc/api/core/files/lib/facets/core/date/days_of_month_rb.html +0 -96
  608. data/doc/api/core/files/lib/facets/core/date/stamp_rb.html +0 -96
  609. data/doc/api/core/files/lib/facets/core/date/to_date_rb.html +0 -96
  610. data/doc/api/core/files/lib/facets/core/date/to_s_rb.html +0 -96
  611. data/doc/api/core/files/lib/facets/core/date/to_time_rb.html +0 -96
  612. data/doc/api/core/files/lib/facets/core/dir/self/ancestor_rb.html +0 -92
  613. data/doc/api/core/files/lib/facets/core/dir/self/ascend_rb.html +0 -92
  614. data/doc/api/core/files/lib/facets/core/dir/self/descend_rb.html +0 -92
  615. data/doc/api/core/files/lib/facets/core/dir/self/ls_r_rb.html +0 -92
  616. data/doc/api/core/files/lib/facets/core/dir/self/recurse_rb.html +0 -100
  617. data/doc/api/core/files/lib/facets/core/enumerable/accumulate_rb.html +0 -96
  618. data/doc/api/core/files/lib/facets/core/enumerable/cascade_rb.html +0 -92
  619. data/doc/api/core/files/lib/facets/core/enumerable/collect_if_rb.html +0 -92
  620. data/doc/api/core/files/lib/facets/core/enumerable/collect_with_counter_rb.html +0 -100
  621. data/doc/api/core/files/lib/facets/core/enumerable/collect_with_index_rb.html +0 -92
  622. data/doc/api/core/files/lib/facets/core/enumerable/commonality_rb.html +0 -92
  623. data/doc/api/core/files/lib/facets/core/enumerable/compact_collect_rb.html +0 -96
  624. data/doc/api/core/files/lib/facets/core/enumerable/compact_map_rb.html +0 -100
  625. data/doc/api/core/files/lib/facets/core/enumerable/count_rb.html +0 -92
  626. data/doc/api/core/files/lib/facets/core/enumerable/cross_rb.html +0 -96
  627. data/doc/api/core/files/lib/facets/core/enumerable/each_by_rb.html +0 -100
  628. data/doc/api/core/files/lib/facets/core/enumerable/each_combination_rb.html +0 -92
  629. data/doc/api/core/files/lib/facets/core/enumerable/each_pair_rb.html +0 -92
  630. data/doc/api/core/files/lib/facets/core/enumerable/each_permutation_rb.html +0 -100
  631. data/doc/api/core/files/lib/facets/core/enumerable/each_slice_rb.html +0 -92
  632. data/doc/api/core/files/lib/facets/core/enumerable/each_unique_pair_rb.html +0 -96
  633. data/doc/api/core/files/lib/facets/core/enumerable/each_with_counter_rb.html +0 -92
  634. data/doc/api/core/files/lib/facets/core/enumerable/elementwise_rb.html +0 -100
  635. data/doc/api/core/files/lib/facets/core/enumerable/entropy_rb.html +0 -97
  636. data/doc/api/core/files/lib/facets/core/enumerable/every_rb.html +0 -96
  637. data/doc/api/core/files/lib/facets/core/enumerable/ew_rb.html +0 -96
  638. data/doc/api/core/files/lib/facets/core/enumerable/filter_collect_rb.html +0 -92
  639. data/doc/api/core/files/lib/facets/core/enumerable/filter_map_rb.html +0 -100
  640. data/doc/api/core/files/lib/facets/core/enumerable/find_collisions_rb.html +0 -96
  641. data/doc/api/core/files/lib/facets/core/enumerable/frequency_rb.html +0 -92
  642. data/doc/api/core/files/lib/facets/core/enumerable/graph_rb.html +0 -96
  643. data/doc/api/core/files/lib/facets/core/enumerable/ideal_entropy_rb.html +0 -92
  644. data/doc/api/core/files/lib/facets/core/enumerable/map_if_rb.html +0 -100
  645. data/doc/api/core/files/lib/facets/core/enumerable/map_with_counter_rb.html +0 -100
  646. data/doc/api/core/files/lib/facets/core/enumerable/map_with_index_rb.html +0 -100
  647. data/doc/api/core/files/lib/facets/core/enumerable/mode_rb.html +0 -92
  648. data/doc/api/core/files/lib/facets/core/enumerable/none_rb.html +0 -92
  649. data/doc/api/core/files/lib/facets/core/enumerable/nonuniq_rb.html +0 -92
  650. data/doc/api/core/files/lib/facets/core/enumerable/occur_rb.html +0 -92
  651. data/doc/api/core/files/lib/facets/core/enumerable/one_rb.html +0 -92
  652. data/doc/api/core/files/lib/facets/core/enumerable/op_pow_rb.html +0 -96
  653. data/doc/api/core/files/lib/facets/core/enumerable/partition_by_rb.html +0 -92
  654. data/doc/api/core/files/lib/facets/core/enumerable/permute_rb.html +0 -96
  655. data/doc/api/core/files/lib/facets/core/enumerable/probability_rb.html +0 -92
  656. data/doc/api/core/files/lib/facets/core/enumerable/project_rb.html +0 -92
  657. data/doc/api/core/files/lib/facets/core/enumerable/self/combinations_rb.html +0 -92
  658. data/doc/api/core/files/lib/facets/core/enumerable/self/cross_rb.html +0 -96
  659. data/doc/api/core/files/lib/facets/core/enumerable/to_h_rb.html +0 -92
  660. data/doc/api/core/files/lib/facets/core/enumerable/uniq_by_rb.html +0 -92
  661. data/doc/api/core/files/lib/facets/core/enumerable/where_rb.html +0 -92
  662. data/doc/api/core/files/lib/facets/core/file/self/append_rb.html +0 -96
  663. data/doc/api/core/files/lib/facets/core/file/self/create_rb.html +0 -92
  664. data/doc/api/core/files/lib/facets/core/file/self/open_as_string_rb.html +0 -118
  665. data/doc/api/core/files/lib/facets/core/file/self/read_binary_rb.html +0 -96
  666. data/doc/api/core/files/lib/facets/core/file/self/read_list_rb.html +0 -97
  667. data/doc/api/core/files/lib/facets/core/file/self/rootname_rb.html +0 -92
  668. data/doc/api/core/files/lib/facets/core/file/self/sanitize_rb.html +0 -96
  669. data/doc/api/core/files/lib/facets/core/file/self/split_all_rb.html +0 -101
  670. data/doc/api/core/files/lib/facets/core/file/self/write_rb.html +0 -96
  671. data/doc/api/core/files/lib/facets/core/fileutils/head_rb.html +0 -100
  672. data/doc/api/core/files/lib/facets/core/fileutils/safe_ln_rb.html +0 -96
  673. data/doc/api/core/files/lib/facets/core/fileutils/slice_rb.html +0 -96
  674. data/doc/api/core/files/lib/facets/core/fileutils/split_all_rb.html +0 -92
  675. data/doc/api/core/files/lib/facets/core/fileutils/tail_rb.html +0 -100
  676. data/doc/api/core/files/lib/facets/core/fileutils/wc_rb.html +0 -96
  677. data/doc/api/core/files/lib/facets/core/fileutils/whereis_rb.html +0 -96
  678. data/doc/api/core/files/lib/facets/core/fileutils/which_rb.html +0 -96
  679. data/doc/api/core/files/lib/facets/core/float/approx_rb.html +0 -100
  680. data/doc/api/core/files/lib/facets/core/float/round_at_rb.html +0 -96
  681. data/doc/api/core/files/lib/facets/core/float/round_off_rb.html +0 -92
  682. data/doc/api/core/files/lib/facets/core/float/round_to_rb.html +0 -96
  683. data/doc/api/core/files/lib/facets/core/gem/self/active_rb.html +0 -92
  684. data/doc/api/core/files/lib/facets/core/gem/self/gempath_rb.html +0 -96
  685. data/doc/api/core/files/lib/facets/core/gem/self/gemspec_rb.html +0 -96
  686. data/doc/api/core/files/lib/facets/core/hash/alias_rb.html +0 -92
  687. data/doc/api/core/files/lib/facets/core/hash/assert_has_keys_rb.html +0 -96
  688. data/doc/api/core/files/lib/facets/core/hash/assert_has_only_keys_rb.html +0 -96
  689. data/doc/api/core/files/lib/facets/core/hash/at_rb.html +0 -92
  690. data/doc/api/core/files/lib/facets/core/hash/collate_rb.html +0 -92
  691. data/doc/api/core/files/lib/facets/core/hash/delete_unless_rb.html +0 -96
  692. data/doc/api/core/files/lib/facets/core/hash/each_rb.html +0 -92
  693. data/doc/api/core/files/lib/facets/core/hash/each_with_index_rb.html +0 -97
  694. data/doc/api/core/files/lib/facets/core/hash/each_with_key_rb.html +0 -92
  695. data/doc/api/core/files/lib/facets/core/hash/graph_rb.html +0 -96
  696. data/doc/api/core/files/lib/facets/core/hash/has_keys_rb.html +0 -92
  697. data/doc/api/core/files/lib/facets/core/hash/has_only_keys_rb.html +0 -92
  698. data/doc/api/core/files/lib/facets/core/hash/inverse_rb.html +0 -92
  699. data/doc/api/core/files/lib/facets/core/hash/join_rb.html +0 -92
  700. data/doc/api/core/files/lib/facets/core/hash/keys_to_s_rb.html +0 -92
  701. data/doc/api/core/files/lib/facets/core/hash/keys_to_sym_rb.html +0 -92
  702. data/doc/api/core/files/lib/facets/core/hash/op_fetch_rb.html +0 -96
  703. data/doc/api/core/files/lib/facets/core/hash/op_lshift_rb.html +0 -92
  704. data/doc/api/core/files/lib/facets/core/hash/op_store_rb.html +0 -100
  705. data/doc/api/core/files/lib/facets/core/hash/rand_key_rb.html +0 -92
  706. data/doc/api/core/files/lib/facets/core/hash/rand_pair_rb.html +0 -96
  707. data/doc/api/core/files/lib/facets/core/hash/rand_value_rb.html +0 -96
  708. data/doc/api/core/files/lib/facets/core/hash/replace_each_rb.html +0 -92
  709. data/doc/api/core/files/lib/facets/core/hash/self/zipnew_rb.html +0 -92
  710. data/doc/api/core/files/lib/facets/core/hash/shuffle_rb.html +0 -96
  711. data/doc/api/core/files/lib/facets/core/hash/slice_rb.html +0 -92
  712. data/doc/api/core/files/lib/facets/core/hash/stringify_keys_rb.html +0 -100
  713. data/doc/api/core/files/lib/facets/core/hash/swap_rb.html +0 -92
  714. data/doc/api/core/files/lib/facets/core/hash/swapkey_rb.html +0 -92
  715. data/doc/api/core/files/lib/facets/core/hash/symoblize_keys_rb.html +0 -100
  716. data/doc/api/core/files/lib/facets/core/hash/to_h_rb.html +0 -92
  717. data/doc/api/core/files/lib/facets/core/hash/to_ostruct_rb.html +0 -96
  718. data/doc/api/core/files/lib/facets/core/hash/to_ostruct_recurse_rb.html +0 -97
  719. data/doc/api/core/files/lib/facets/core/hash/to_proc_rb.html +0 -92
  720. data/doc/api/core/files/lib/facets/core/hash/traverse_rb.html +0 -92
  721. data/doc/api/core/files/lib/facets/core/hash/update_each_rb.html +0 -92
  722. data/doc/api/core/files/lib/facets/core/hash/update_keys_rb.html +0 -92
  723. data/doc/api/core/files/lib/facets/core/hash/update_values_rb.html +0 -92
  724. data/doc/api/core/files/lib/facets/core/hash/variablize_keys_rb.html +0 -92
  725. data/doc/api/core/files/lib/facets/core/hash/weave_rb.html +0 -92
  726. data/doc/api/core/files/lib/facets/core/inflect_rb.html +0 -117
  727. data/doc/api/core/files/lib/facets/core/integer/even_rb.html +0 -100
  728. data/doc/api/core/files/lib/facets/core/integer/fac_rb.html +0 -100
  729. data/doc/api/core/files/lib/facets/core/integer/fact_rb.html +0 -100
  730. data/doc/api/core/files/lib/facets/core/integer/factorial_rb.html +0 -92
  731. data/doc/api/core/files/lib/facets/core/integer/multiple_rb.html +0 -92
  732. data/doc/api/core/files/lib/facets/core/integer/odd_rb.html +0 -100
  733. data/doc/api/core/files/lib/facets/core/integer/ordinal_rb.html +0 -92
  734. data/doc/api/core/files/lib/facets/core/integer/times_collect_rb.html +0 -92
  735. data/doc/api/core/files/lib/facets/core/integer/times_map_rb.html +0 -100
  736. data/doc/api/core/files/lib/facets/core/kernel/__DIR___rb.html +0 -92
  737. data/doc/api/core/files/lib/facets/core/kernel/__callee___rb.html +0 -100
  738. data/doc/api/core/files/lib/facets/core/kernel/__class___rb.html +0 -92
  739. data/doc/api/core/files/lib/facets/core/kernel/__get___rb.html +0 -92
  740. data/doc/api/core/files/lib/facets/core/kernel/__method___rb.html +0 -92
  741. data/doc/api/core/files/lib/facets/core/kernel/__self___rb.html +0 -96
  742. data/doc/api/core/files/lib/facets/core/kernel/__set___rb.html +0 -100
  743. data/doc/api/core/files/lib/facets/core/kernel/as_rb.html +0 -96
  744. data/doc/api/core/files/lib/facets/core/kernel/assign_from_rb.html +0 -96
  745. data/doc/api/core/files/lib/facets/core/kernel/assign_with_rb.html +0 -97
  746. data/doc/api/core/files/lib/facets/core/kernel/autoreload_files_rb.html +0 -100
  747. data/doc/api/core/files/lib/facets/core/kernel/autoreload_glob_rb.html +0 -100
  748. data/doc/api/core/files/lib/facets/core/kernel/autoreload_rb.html +0 -92
  749. data/doc/api/core/files/lib/facets/core/kernel/bool_rb.html +0 -92
  750. data/doc/api/core/files/lib/facets/core/kernel/bug_rb.html +0 -92
  751. data/doc/api/core/files/lib/facets/core/kernel/cache_rb.html +0 -92
  752. data/doc/api/core/files/lib/facets/core/kernel/call_stack_rb.html +0 -92
  753. data/doc/api/core/files/lib/facets/core/kernel/called_rb.html +0 -92
  754. data/doc/api/core/files/lib/facets/core/kernel/complete_rb.html +0 -92
  755. data/doc/api/core/files/lib/facets/core/kernel/constant_rb.html +0 -92
  756. data/doc/api/core/files/lib/facets/core/kernel/copy_rb.html +0 -92
  757. data/doc/api/core/files/lib/facets/core/kernel/deep_copy_rb.html +0 -92
  758. data/doc/api/core/files/lib/facets/core/kernel/demo_rb.html +0 -92
  759. data/doc/api/core/files/lib/facets/core/kernel/eigenclass_rb.html +0 -103
  760. data/doc/api/core/files/lib/facets/core/kernel/false_rb.html +0 -100
  761. data/doc/api/core/files/lib/facets/core/kernel/fn_rb.html +0 -92
  762. data/doc/api/core/files/lib/facets/core/kernel/generate_method_name_rb.html +0 -92
  763. data/doc/api/core/files/lib/facets/core/kernel/get_by_id_rb.html +0 -92
  764. data/doc/api/core/files/lib/facets/core/kernel/here_rb.html +0 -92
  765. data/doc/api/core/files/lib/facets/core/kernel/in_rb.html +0 -92
  766. data/doc/api/core/files/lib/facets/core/kernel/instance_assign_rb.html +0 -92
  767. data/doc/api/core/files/lib/facets/core/kernel/instvar_rb.html +0 -92
  768. data/doc/api/core/files/lib/facets/core/kernel/is_rb.html +0 -96
  769. data/doc/api/core/files/lib/facets/core/kernel/maybe_rb.html +0 -92
  770. data/doc/api/core/files/lib/facets/core/kernel/metaclass_rb.html +0 -92
  771. data/doc/api/core/files/lib/facets/core/kernel/method_rb.html +0 -92
  772. data/doc/api/core/files/lib/facets/core/kernel/methods_rb.html +0 -96
  773. data/doc/api/core/files/lib/facets/core/kernel/nack_rb.html +0 -98
  774. data/doc/api/core/files/lib/facets/core/kernel/new_rb.html +0 -92
  775. data/doc/api/core/files/lib/facets/core/kernel/object_class_rb.html +0 -92
  776. data/doc/api/core/files/lib/facets/core/kernel/object_hexid_rb.html +0 -92
  777. data/doc/api/core/files/lib/facets/core/kernel/op_esc_rb.html +0 -92
  778. data/doc/api/core/files/lib/facets/core/kernel/own_rb.html +0 -92
  779. data/doc/api/core/files/lib/facets/core/kernel/p_rb.html +0 -92
  780. data/doc/api/core/files/lib/facets/core/kernel/pp_exception_rb.html +0 -92
  781. data/doc/api/core/files/lib/facets/core/kernel/quaclass_rb.html +0 -92
  782. data/doc/api/core/files/lib/facets/core/kernel/require_all_rb.html +0 -92
  783. data/doc/api/core/files/lib/facets/core/kernel/require_esc_rb.html +0 -96
  784. data/doc/api/core/files/lib/facets/core/kernel/require_facet_rb.html +0 -96
  785. data/doc/api/core/files/lib/facets/core/kernel/require_local_rb.html +0 -92
  786. data/doc/api/core/files/lib/facets/core/kernel/resc_rb.html +0 -92
  787. data/doc/api/core/files/lib/facets/core/kernel/respond_rb.html +0 -92
  788. data/doc/api/core/files/lib/facets/core/kernel/returning_rb.html +0 -92
  789. data/doc/api/core/files/lib/facets/core/kernel/send_as_rb.html +0 -92
  790. data/doc/api/core/files/lib/facets/core/kernel/set_from_rb.html +0 -96
  791. data/doc/api/core/files/lib/facets/core/kernel/set_with_rb.html +0 -96
  792. data/doc/api/core/files/lib/facets/core/kernel/silence_warnings_rb.html +0 -100
  793. data/doc/api/core/files/lib/facets/core/kernel/silently_rb.html +0 -92
  794. data/doc/api/core/files/lib/facets/core/kernel/singleton_class_rb.html +0 -92
  795. data/doc/api/core/files/lib/facets/core/kernel/singleton_rb.html +0 -92
  796. data/doc/api/core/files/lib/facets/core/kernel/superior_rb.html +0 -92
  797. data/doc/api/core/files/lib/facets/core/kernel/supermethod_rb.html +0 -92
  798. data/doc/api/core/files/lib/facets/core/kernel/this_rb.html +0 -92
  799. data/doc/api/core/files/lib/facets/core/kernel/to_b_rb.html +0 -92
  800. data/doc/api/core/files/lib/facets/core/kernel/to_bool_rb.html +0 -92
  801. data/doc/api/core/files/lib/facets/core/kernel/true_rb.html +0 -100
  802. data/doc/api/core/files/lib/facets/core/kernel/unuri_rb.html +0 -100
  803. data/doc/api/core/files/lib/facets/core/kernel/uri_rb.html +0 -96
  804. data/doc/api/core/files/lib/facets/core/kernel/val_rb.html +0 -92
  805. data/doc/api/core/files/lib/facets/core/kernel/warn_with_line_rb.html +0 -92
  806. data/doc/api/core/files/lib/facets/core/kernel/with_accessor_rb.html +0 -92
  807. data/doc/api/core/files/lib/facets/core/kernel/with_reader_rb.html +0 -100
  808. data/doc/api/core/files/lib/facets/core/kernel/with_writer_rb.html +0 -100
  809. data/doc/api/core/files/lib/facets/core/logger/format_message_rb.html +0 -96
  810. data/doc/api/core/files/lib/facets/core/logger/format_rb.html +0 -96
  811. data/doc/api/core/files/lib/facets/core/matchdata/match_rb.html +0 -92
  812. data/doc/api/core/files/lib/facets/core/matchdata/matchset_rb.html +0 -100
  813. data/doc/api/core/files/lib/facets/core/matchdata/matchtree_rb.html +0 -92
  814. data/doc/api/core/files/lib/facets/core/module/abstract_rb.html +0 -105
  815. data/doc/api/core/files/lib/facets/core/module/alias_method_chain_rb.html +0 -92
  816. data/doc/api/core/files/lib/facets/core/module/alias_module_function_rb.html +0 -92
  817. data/doc/api/core/files/lib/facets/core/module/ancestor_rb.html +0 -92
  818. data/doc/api/core/files/lib/facets/core/module/attr_query_rb.html +0 -96
  819. data/doc/api/core/files/lib/facets/core/module/attr_rb.html +0 -92
  820. data/doc/api/core/files/lib/facets/core/module/attr_setter_rb.html +0 -92
  821. data/doc/api/core/files/lib/facets/core/module/attr_tester_rb.html +0 -96
  822. data/doc/api/core/files/lib/facets/core/module/attr_validator_rb.html +0 -92
  823. data/doc/api/core/files/lib/facets/core/module/basename_rb.html +0 -92
  824. data/doc/api/core/files/lib/facets/core/module/by_name_rb.html +0 -96
  825. data/doc/api/core/files/lib/facets/core/module/class_extension_rb.html +0 -124
  826. data/doc/api/core/files/lib/facets/core/module/class_rb.html +0 -92
  827. data/doc/api/core/files/lib/facets/core/module/clone_removing_rb.html +0 -100
  828. data/doc/api/core/files/lib/facets/core/module/clone_renaming_rb.html +0 -100
  829. data/doc/api/core/files/lib/facets/core/module/clone_using_rb.html +0 -92
  830. data/doc/api/core/files/lib/facets/core/module/dirname_rb.html +0 -92
  831. data/doc/api/core/files/lib/facets/core/module/equate_on_rb.html +0 -92
  832. data/doc/api/core/files/lib/facets/core/module/generate_instance_method_name_rb.html +0 -92
  833. data/doc/api/core/files/lib/facets/core/module/include_as_rb.html +0 -96
  834. data/doc/api/core/files/lib/facets/core/module/initializer_rb.html +0 -92
  835. data/doc/api/core/files/lib/facets/core/module/instance_methods_rb.html +0 -96
  836. data/doc/api/core/files/lib/facets/core/module/integrate_rb.html +0 -104
  837. data/doc/api/core/files/lib/facets/core/module/is_rb.html +0 -96
  838. data/doc/api/core/files/lib/facets/core/module/memoize_rb.html +0 -92
  839. data/doc/api/core/files/lib/facets/core/module/modspace_rb.html +0 -97
  840. data/doc/api/core/files/lib/facets/core/module/namespace_rb.html +0 -96
  841. data/doc/api/core/files/lib/facets/core/module/nesting_rb.html +0 -92
  842. data/doc/api/core/files/lib/facets/core/module/nodef_rb.html +0 -92
  843. data/doc/api/core/files/lib/facets/core/module/on_included_rb.html +0 -92
  844. data/doc/api/core/files/lib/facets/core/module/redef_rb.html +0 -96
  845. data/doc/api/core/files/lib/facets/core/module/redefine_method_rb.html +0 -92
  846. data/doc/api/core/files/lib/facets/core/module/redirect_method_rb.html +0 -92
  847. data/doc/api/core/files/lib/facets/core/module/redirect_rb.html +0 -96
  848. data/doc/api/core/files/lib/facets/core/module/remove_rb.html +0 -92
  849. data/doc/api/core/files/lib/facets/core/module/rename_method_rb.html +0 -92
  850. data/doc/api/core/files/lib/facets/core/module/rename_rb.html +0 -96
  851. data/doc/api/core/files/lib/facets/core/module/revisal_rb.html +0 -100
  852. data/doc/api/core/files/lib/facets/core/module/shadow_all_rb.html +0 -96
  853. data/doc/api/core/files/lib/facets/core/module/shadow_method_rb.html +0 -92
  854. data/doc/api/core/files/lib/facets/core/module/sort_on_rb.html +0 -92
  855. data/doc/api/core/files/lib/facets/core/module/this_rb.html +0 -96
  856. data/doc/api/core/files/lib/facets/core/module/wrap_method_rb.html +0 -92
  857. data/doc/api/core/files/lib/facets/core/module/wrap_rb.html +0 -96
  858. data/doc/api/core/files/lib/facets/core/nil_as_emptiness_rb.html +0 -116
  859. data/doc/api/core/files/lib/facets/core/nilclass/blank_rb.html +0 -92
  860. data/doc/api/core/files/lib/facets/core/nilclass/empty_rb.html +0 -92
  861. data/doc/api/core/files/lib/facets/core/nilclass/include_rb.html +0 -92
  862. data/doc/api/core/files/lib/facets/core/nilclass/length_rb.html +0 -100
  863. data/doc/api/core/files/lib/facets/core/nilclass/op_cmp_rb.html +0 -92
  864. data/doc/api/core/files/lib/facets/core/nilclass/op_fetch_rb.html +0 -92
  865. data/doc/api/core/files/lib/facets/core/nilclass/size_rb.html +0 -92
  866. data/doc/api/core/files/lib/facets/core/nilclass/status_rb.html +0 -92
  867. data/doc/api/core/files/lib/facets/core/nilclass/succ_rb.html +0 -92
  868. data/doc/api/core/files/lib/facets/core/nilclass/to_h_rb.html +0 -92
  869. data/doc/api/core/files/lib/facets/core/numeric/approx_rb.html +0 -92
  870. data/doc/api/core/files/lib/facets/core/numeric/ceil_multiple_rb.html +0 -92
  871. data/doc/api/core/files/lib/facets/core/numeric/pred_rb.html +0 -100
  872. data/doc/api/core/files/lib/facets/core/numeric/succ_rb.html +0 -92
  873. data/doc/api/core/files/lib/facets/core/numeric/to_b_rb.html +0 -92
  874. data/doc/api/core/files/lib/facets/core/ostruct/__merge___rb.html +0 -97
  875. data/doc/api/core/files/lib/facets/core/ostruct/__table___rb.html +0 -92
  876. data/doc/api/core/files/lib/facets/core/ostruct/__update___rb.html +0 -98
  877. data/doc/api/core/files/lib/facets/core/ostruct/instance_rb.html +0 -96
  878. data/doc/api/core/files/lib/facets/core/ostruct/op_fetch_rb.html +0 -96
  879. data/doc/api/core/files/lib/facets/core/ostruct/op_store_rb.html +0 -96
  880. data/doc/api/core/files/lib/facets/core/ostruct/to_h_rb.html +0 -92
  881. data/doc/api/core/files/lib/facets/core/ostruct_rb.html +0 -102
  882. data/doc/api/core/files/lib/facets/core/pathname/ascend_rb.html +0 -96
  883. data/doc/api/core/files/lib/facets/core/pathname/descend_rb.html +0 -96
  884. data/doc/api/core/files/lib/facets/core/proc/compose_rb.html +0 -92
  885. data/doc/api/core/files/lib/facets/core/proc/op_mul_rb.html +0 -100
  886. data/doc/api/core/files/lib/facets/core/proc/to_method_rb.html +0 -133
  887. data/doc/api/core/files/lib/facets/core/random_rb.html +0 -111
  888. data/doc/api/core/files/lib/facets/core/range/to_r_rb.html +0 -92
  889. data/doc/api/core/files/lib/facets/core/range/to_range_rb.html +0 -92
  890. data/doc/api/core/files/lib/facets/core/range/umbrella_rb.html +0 -92
  891. data/doc/api/core/files/lib/facets/core/range/within_rb.html +0 -96
  892. data/doc/api/core/files/lib/facets/core/regexp/arity_rb.html +0 -92
  893. data/doc/api/core/files/lib/facets/core/regexp/to_re_rb.html +0 -92
  894. data/doc/api/core/files/lib/facets/core/regexp/to_regexp_rb.html +0 -92
  895. data/doc/api/core/files/lib/facets/core/string/align_center_rb.html +0 -92
  896. data/doc/api/core/files/lib/facets/core/string/align_left_rb.html +0 -100
  897. data/doc/api/core/files/lib/facets/core/string/align_right_rb.html +0 -100
  898. data/doc/api/core/files/lib/facets/core/string/at_rand_rb.html +0 -98
  899. data/doc/api/core/files/lib/facets/core/string/at_rb.html +0 -92
  900. data/doc/api/core/files/lib/facets/core/string/basename_rb.html +0 -92
  901. data/doc/api/core/files/lib/facets/core/string/blank_rb.html +0 -92
  902. data/doc/api/core/files/lib/facets/core/string/bracket_rb.html +0 -92
  903. data/doc/api/core/files/lib/facets/core/string/brief_rb.html +0 -92
  904. data/doc/api/core/files/lib/facets/core/string/bytes_rb.html +0 -92
  905. data/doc/api/core/files/lib/facets/core/string/camelcase_rb.html +0 -92
  906. data/doc/api/core/files/lib/facets/core/string/camelize_rb.html +0 -92
  907. data/doc/api/core/files/lib/facets/core/string/capitalized_rb.html +0 -92
  908. data/doc/api/core/files/lib/facets/core/string/chars_rb.html +0 -92
  909. data/doc/api/core/files/lib/facets/core/string/cmp_rb.html +0 -92
  910. data/doc/api/core/files/lib/facets/core/string/demodulize_rb.html +0 -96
  911. data/doc/api/core/files/lib/facets/core/string/dequote_rb.html +0 -92
  912. data/doc/api/core/files/lib/facets/core/string/downcase_rb.html +0 -92
  913. data/doc/api/core/files/lib/facets/core/string/dresner_rb.html +0 -92
  914. data/doc/api/core/files/lib/facets/core/string/each_char_rb.html +0 -92
  915. data/doc/api/core/files/lib/facets/core/string/each_word_rb.html +0 -92
  916. data/doc/api/core/files/lib/facets/core/string/ends_with_rb.html +0 -100
  917. data/doc/api/core/files/lib/facets/core/string/first_char_rb.html +0 -96
  918. data/doc/api/core/files/lib/facets/core/string/first_rb.html +0 -98
  919. data/doc/api/core/files/lib/facets/core/string/fold_rb.html +0 -92
  920. data/doc/api/core/files/lib/facets/core/string/format_rb.html +0 -96
  921. data/doc/api/core/files/lib/facets/core/string/humanize_rb.html +0 -92
  922. data/doc/api/core/files/lib/facets/core/string/indent_rb.html +0 -92
  923. data/doc/api/core/files/lib/facets/core/string/index_all_rb.html +0 -92
  924. data/doc/api/core/files/lib/facets/core/string/last_char_rb.html +0 -96
  925. data/doc/api/core/files/lib/facets/core/string/last_rb.html +0 -98
  926. data/doc/api/core/files/lib/facets/core/string/line_wrap_rb.html +0 -92
  927. data/doc/api/core/files/lib/facets/core/string/lines_rb.html +0 -92
  928. data/doc/api/core/files/lib/facets/core/string/lowercase_rb.html +0 -96
  929. data/doc/api/core/files/lib/facets/core/string/margin_rb.html +0 -92
  930. data/doc/api/core/files/lib/facets/core/string/methodize_rb.html +0 -92
  931. data/doc/api/core/files/lib/facets/core/string/modulize_rb.html +0 -92
  932. data/doc/api/core/files/lib/facets/core/string/mscan_rb.html +0 -92
  933. data/doc/api/core/files/lib/facets/core/string/natcmp_rb.html +0 -92
  934. data/doc/api/core/files/lib/facets/core/string/nchar_rb.html +0 -92
  935. data/doc/api/core/files/lib/facets/core/string/ordinal_rb.html +0 -96
  936. data/doc/api/core/files/lib/facets/core/string/pathize_rb.html +0 -92
  937. data/doc/api/core/files/lib/facets/core/string/plural_rb.html +0 -100
  938. data/doc/api/core/files/lib/facets/core/string/pop_rb.html +0 -92
  939. data/doc/api/core/files/lib/facets/core/string/pot_rb.html +0 -92
  940. data/doc/api/core/files/lib/facets/core/string/pull_rb.html +0 -92
  941. data/doc/api/core/files/lib/facets/core/string/push_rb.html +0 -92
  942. data/doc/api/core/files/lib/facets/core/string/quote_rb.html +0 -96
  943. data/doc/api/core/files/lib/facets/core/string/rand_byte_rb.html +0 -92
  944. data/doc/api/core/files/lib/facets/core/string/rand_index_rb.html +0 -92
  945. data/doc/api/core/files/lib/facets/core/string/range_all_rb.html +0 -96
  946. data/doc/api/core/files/lib/facets/core/string/range_of_line_rb.html +0 -92
  947. data/doc/api/core/files/lib/facets/core/string/range_rb.html +0 -92
  948. data/doc/api/core/files/lib/facets/core/string/regesc_rb.html +0 -92
  949. data/doc/api/core/files/lib/facets/core/string/self/format_rb.html +0 -92
  950. data/doc/api/core/files/lib/facets/core/string/self/interpolate_rb.html +0 -92
  951. data/doc/api/core/files/lib/facets/core/string/self/patterns_rb.html +0 -92
  952. data/doc/api/core/files/lib/facets/core/string/self/rand_letter_rb.html +0 -92
  953. data/doc/api/core/files/lib/facets/core/string/self/random_rb.html +0 -99
  954. data/doc/api/core/files/lib/facets/core/string/shatter_rb.html +0 -92
  955. data/doc/api/core/files/lib/facets/core/string/shell_escape_rb.html +0 -92
  956. data/doc/api/core/files/lib/facets/core/string/shift_rb.html +0 -92
  957. data/doc/api/core/files/lib/facets/core/string/shuffle_rb.html +0 -96
  958. data/doc/api/core/files/lib/facets/core/string/similarity_rb.html +0 -92
  959. data/doc/api/core/files/lib/facets/core/string/singular_rb.html +0 -92
  960. data/doc/api/core/files/lib/facets/core/string/soundex_rb.html +0 -92
  961. data/doc/api/core/files/lib/facets/core/string/starts_with_rb.html +0 -92
  962. data/doc/api/core/files/lib/facets/core/string/succ_rb.html +0 -92
  963. data/doc/api/core/files/lib/facets/core/string/tab_rb.html +0 -100
  964. data/doc/api/core/files/lib/facets/core/string/tabto_rb.html +0 -100
  965. data/doc/api/core/files/lib/facets/core/string/to_a_rb.html +0 -92
  966. data/doc/api/core/files/lib/facets/core/string/to_b_rb.html +0 -92
  967. data/doc/api/core/files/lib/facets/core/string/to_const_rb.html +0 -92
  968. data/doc/api/core/files/lib/facets/core/string/to_date_rb.html +0 -97
  969. data/doc/api/core/files/lib/facets/core/string/to_proc_rb.html +0 -92
  970. data/doc/api/core/files/lib/facets/core/string/to_re_rb.html +0 -92
  971. data/doc/api/core/files/lib/facets/core/string/to_rx_rb.html +0 -100
  972. data/doc/api/core/files/lib/facets/core/string/to_time_rb.html +0 -96
  973. data/doc/api/core/files/lib/facets/core/string/unbracket_rb.html +0 -96
  974. data/doc/api/core/files/lib/facets/core/string/underscore_rb.html +0 -92
  975. data/doc/api/core/files/lib/facets/core/string/unix_crypt_rb.html +0 -96
  976. data/doc/api/core/files/lib/facets/core/string/unpack_rb.html +0 -92
  977. data/doc/api/core/files/lib/facets/core/string/unshift_rb.html +0 -92
  978. data/doc/api/core/files/lib/facets/core/string/upcase_rb.html +0 -92
  979. data/doc/api/core/files/lib/facets/core/string/uppercase_rb.html +0 -100
  980. data/doc/api/core/files/lib/facets/core/string/whitespace_rb.html +0 -96
  981. data/doc/api/core/files/lib/facets/core/string/word_filter_rb.html +0 -92
  982. data/doc/api/core/files/lib/facets/core/string/word_wrap_rb.html +0 -92
  983. data/doc/api/core/files/lib/facets/core/string/words_rb.html +0 -92
  984. data/doc/api/core/files/lib/facets/core/string_as_array_rb.html +0 -109
  985. data/doc/api/core/files/lib/facets/core/symbol/camelcase_rb.html +0 -96
  986. data/doc/api/core/files/lib/facets/core/symbol/camelize_rb.html +0 -96
  987. data/doc/api/core/files/lib/facets/core/symbol/capitalize_rb.html +0 -96
  988. data/doc/api/core/files/lib/facets/core/symbol/capitalized_rb.html +0 -97
  989. data/doc/api/core/files/lib/facets/core/symbol/downcase_rb.html +0 -96
  990. data/doc/api/core/files/lib/facets/core/symbol/not_rb.html +0 -92
  991. data/doc/api/core/files/lib/facets/core/symbol/pad_rb.html +0 -92
  992. data/doc/api/core/files/lib/facets/core/symbol/succ_rb.html +0 -92
  993. data/doc/api/core/files/lib/facets/core/symbol/to_const_rb.html +0 -96
  994. data/doc/api/core/files/lib/facets/core/symbol/to_proc_rb.html +0 -92
  995. data/doc/api/core/files/lib/facets/core/symbol/to_str_rb.html +0 -92
  996. data/doc/api/core/files/lib/facets/core/symbol/underscore_rb.html +0 -96
  997. data/doc/api/core/files/lib/facets/core/symbol/upcase_rb.html +0 -96
  998. data/doc/api/core/files/lib/facets/core/time/change_rb.html +0 -92
  999. data/doc/api/core/files/lib/facets/core/time/elapse_rb.html +0 -92
  1000. data/doc/api/core/files/lib/facets/core/time/self/days_extrema_rb.html +0 -114
  1001. data/doc/api/core/files/lib/facets/core/time/self/stamp_rb.html +0 -100
  1002. data/doc/api/core/files/lib/facets/core/time/stamp_rb.html +0 -92
  1003. data/doc/api/core/files/lib/facets/core/time/to_date_rb.html +0 -96
  1004. data/doc/api/core/files/lib/facets/core/time/to_s_rb.html +0 -96
  1005. data/doc/api/core/files/lib/facets/core/time/to_time_rb.html +0 -92
  1006. data/doc/api/core/files/lib/facets/core/unboundmethod/name_rb.html +0 -92
  1007. data/doc/api/core/fr_class_index.html +0 -81
  1008. data/doc/api/core/fr_file_index.html +0 -521
  1009. data/doc/api/core/fr_method_index.html +0 -559
  1010. data/doc/api/core/index.html +0 -26
  1011. data/doc/api/core/rdoc-style.css +0 -175
  1012. data/doc/api/more/classes/Annotation.html +0 -258
  1013. data/doc/api/more/classes/Array.html +0 -363
  1014. data/doc/api/more/classes/Aspect.html +0 -159
  1015. data/doc/api/more/classes/Aspects.html +0 -240
  1016. data/doc/api/more/classes/Aspects/ClassMethods.html +0 -254
  1017. data/doc/api/more/classes/Association.html +0 -289
  1018. data/doc/api/more/classes/BBCode.html +0 -531
  1019. data/doc/api/more/classes/BasicObject.html +0 -281
  1020. data/doc/api/more/classes/BasicObject/Self.html +0 -143
  1021. data/doc/api/more/classes/BinaryReader.html +0 -535
  1022. data/doc/api/more/classes/BinaryReader/ByteOrder.html +0 -225
  1023. data/doc/api/more/classes/BuilderObject.html +0 -248
  1024. data/doc/api/more/classes/Class.html +0 -200
  1025. data/doc/api/more/classes/Client.html +0 -1251
  1026. data/doc/api/more/classes/Cloneable.html +0 -133
  1027. data/doc/api/more/classes/Console.html +0 -105
  1028. data/doc/api/more/classes/Console/ANSICode.html +0 -488
  1029. data/doc/api/more/classes/Console/Command.html +0 -286
  1030. data/doc/api/more/classes/Console/ProgressBar.html +0 -640
  1031. data/doc/api/more/classes/Coroutine.html +0 -284
  1032. data/doc/api/more/classes/Crypt.html +0 -270
  1033. data/doc/api/more/classes/DebugSocket.html +0 -242
  1034. data/doc/api/more/classes/Dictionary.html +0 -974
  1035. data/doc/api/more/classes/Downloader.html +0 -515
  1036. data/doc/api/more/classes/Downloader/Checksum.html +0 -96
  1037. data/doc/api/more/classes/Downloader/Mirror.html +0 -134
  1038. data/doc/api/more/classes/Elementor.html +0 -202
  1039. data/doc/api/more/classes/Enumerable.html +0 -86
  1040. data/doc/api/more/classes/EnumerablePass.html +0 -217
  1041. data/doc/api/more/classes/Expirable.html +0 -197
  1042. data/doc/api/more/classes/FalseClass.html +0 -119
  1043. data/doc/api/more/classes/FileList.html +0 -971
  1044. data/doc/api/more/classes/Float.html +0 -141
  1045. data/doc/api/more/classes/FloatString.html +0 -413
  1046. data/doc/api/more/classes/Functor.html +0 -224
  1047. data/doc/api/more/classes/HTMLBuilder.html +0 -132
  1048. data/doc/api/more/classes/HTMLHelper.html +0 -189
  1049. data/doc/api/more/classes/HTTP.html +0 -154
  1050. data/doc/api/more/classes/HTTP/BadResponseError.html +0 -94
  1051. data/doc/api/more/classes/HTTP/Error.html +0 -96
  1052. data/doc/api/more/classes/HTTP/Message.html +0 -633
  1053. data/doc/api/more/classes/HTTP/Message/Body.html +0 -299
  1054. data/doc/api/more/classes/HTTP/Message/Headers.html +0 -641
  1055. data/doc/api/more/classes/HTTP/Status.html +0 -148
  1056. data/doc/api/more/classes/HTTPAccess.html +0 -115
  1057. data/doc/api/more/classes/Hash.html +0 -257
  1058. data/doc/api/more/classes/HashBuilder.html +0 -216
  1059. data/doc/api/more/classes/Heap.html +0 -535
  1060. data/doc/api/more/classes/Heap/EmptyHeapException.html +0 -92
  1061. data/doc/api/more/classes/Heap/Max.html +0 -133
  1062. data/doc/api/more/classes/Heap/Min.html +0 -133
  1063. data/doc/api/more/classes/IORedirect.html +0 -224
  1064. data/doc/api/more/classes/Integer.html +0 -299
  1065. data/doc/api/more/classes/Interval.html +0 -853
  1066. data/doc/api/more/classes/InvalidNackError.html +0 -117
  1067. data/doc/api/more/classes/JSON.html +0 -410
  1068. data/doc/api/more/classes/JSON/Parser.html +0 -374
  1069. data/doc/api/more/classes/JSON/State.html +0 -280
  1070. data/doc/api/more/classes/Kernel.html +0 -400
  1071. data/doc/api/more/classes/LRUCache.html +0 -461
  1072. data/doc/api/more/classes/LRUCache/Item.html +0 -114
  1073. data/doc/api/more/classes/LRUCache/Sentinel.html +0 -102
  1074. data/doc/api/more/classes/Lazy.html +0 -96
  1075. data/doc/api/more/classes/Lazy/Future.html +0 -100
  1076. data/doc/api/more/classes/Lazy/Promise.html +0 -114
  1077. data/doc/api/more/classes/Lazy/PromiseSafe.html +0 -99
  1078. data/doc/api/more/classes/Lisp.html +0 -846
  1079. data/doc/api/more/classes/Lisp/DottedPair.html +0 -289
  1080. data/doc/api/more/classes/Lisp/Format.html +0 -147
  1081. data/doc/api/more/classes/Math.html +0 -110
  1082. data/doc/api/more/classes/Math/Constants.html +0 -691
  1083. data/doc/api/more/classes/Math/Constants/CGS.html +0 -584
  1084. data/doc/api/more/classes/Method.html +0 -170
  1085. data/doc/api/more/classes/Method/Probe.html +0 -267
  1086. data/doc/api/more/classes/Mock.html +0 -276
  1087. data/doc/api/more/classes/Module.html +0 -599
  1088. data/doc/api/more/classes/Multiton.html +0 -256
  1089. data/doc/api/more/classes/NackClass.html +0 -245
  1090. data/doc/api/more/classes/NilClass.html +0 -238
  1091. data/doc/api/more/classes/NullClass.html +0 -202
  1092. data/doc/api/more/classes/Numeric.html +0 -1104
  1093. data/doc/api/more/classes/ORMSupport.html +0 -357
  1094. data/doc/api/more/classes/Object.html +0 -328
  1095. data/doc/api/more/classes/OpenCascade.html +0 -230
  1096. data/doc/api/more/classes/OpenObject.html +0 -552
  1097. data/doc/api/more/classes/PQueue.html +0 -471
  1098. data/doc/api/more/classes/PathList.html +0 -162
  1099. data/doc/api/more/classes/PathList/Finder.html +0 -137
  1100. data/doc/api/more/classes/Pool.html +0 -207
  1101. data/doc/api/more/classes/Proc.html +0 -140
  1102. data/doc/api/more/classes/PromoteSelf.html +0 -138
  1103. data/doc/api/more/classes/Quaternion.html +0 -1497
  1104. data/doc/api/more/classes/REXMLBuilder.html +0 -357
  1105. data/doc/api/more/classes/REXMLBuilder/REXMLUtil.html +0 -396
  1106. data/doc/api/more/classes/Recorder.html +0 -208
  1107. data/doc/api/more/classes/Reference.html +0 -201
  1108. data/doc/api/more/classes/RubyOneLiners.html +0 -139
  1109. data/doc/api/more/classes/RubyTals.html +0 -316
  1110. data/doc/api/more/classes/SSLSocketWrap.html +0 -410
  1111. data/doc/api/more/classes/Semaphore.html +0 -264
  1112. data/doc/api/more/classes/SimpleStringIO.html +0 -139
  1113. data/doc/api/more/classes/Snapshot.html +0 -191
  1114. data/doc/api/more/classes/StateMachine.html +0 -248
  1115. data/doc/api/more/classes/StateParser.html +0 -276
  1116. data/doc/api/more/classes/StateParser/Constants.html +0 -109
  1117. data/doc/api/more/classes/StateParser/Marker.html +0 -269
  1118. data/doc/api/more/classes/StateParser/State.html +0 -448
  1119. data/doc/api/more/classes/StaticHash.html +0 -144
  1120. data/doc/api/more/classes/String.html +0 -300
  1121. data/doc/api/more/classes/Struct.html +0 -134
  1122. data/doc/api/more/classes/Symbol.html +0 -118
  1123. data/doc/api/more/classes/SyncArray.html +0 -131
  1124. data/doc/api/more/classes/SyncHash.html +0 -135
  1125. data/doc/api/more/classes/SyncHash/Delegator.html +0 -213
  1126. data/doc/api/more/classes/SyncHash/Inheritor.html +0 -213
  1127. data/doc/api/more/classes/System.html +0 -1055
  1128. data/doc/api/more/classes/TSort.html +0 -123
  1129. data/doc/api/more/classes/TagIterator.html +0 -706
  1130. data/doc/api/more/classes/Task.html +0 -237
  1131. data/doc/api/more/classes/Task/Graph.html +0 -165
  1132. data/doc/api/more/classes/Taskable.html +0 -300
  1133. data/doc/api/more/classes/Time.html +0 -746
  1134. data/doc/api/more/classes/Timer.html +0 -471
  1135. data/doc/api/more/classes/Timer/Dummy.html +0 -141
  1136. data/doc/api/more/classes/TracePoint.html +0 -456
  1137. data/doc/api/more/classes/TrueClass.html +0 -118
  1138. data/doc/api/more/classes/Tuple.html +0 -907
  1139. data/doc/api/more/classes/TypeCastException.html +0 -163
  1140. data/doc/api/more/classes/Uninheritable.html +0 -130
  1141. data/doc/api/more/classes/Units.html +0 -191
  1142. data/doc/api/more/classes/Units/Config.html +0 -120
  1143. data/doc/api/more/classes/Units/Converter.html +0 -808
  1144. data/doc/api/more/classes/Units/Converter/ExchangeRate.html +0 -155
  1145. data/doc/api/more/classes/Units/Converter/ExchangeRate/CachedXMethods.html +0 -143
  1146. data/doc/api/more/classes/Units/Converter/ExchangeRate/XMethods.html +0 -197
  1147. data/doc/api/more/classes/Units/Unit.html +0 -434
  1148. data/doc/api/more/classes/Units/Value.html +0 -331
  1149. data/doc/api/more/classes/ValueHolder.html +0 -167
  1150. data/doc/api/more/classes/Web.html +0 -103
  1151. data/doc/api/more/classes/Web/Cookie.html +0 -560
  1152. data/doc/api/more/classes/Web/CookieManager.html +0 -567
  1153. data/doc/api/more/classes/Web/CookieManager/Error.html +0 -96
  1154. data/doc/api/more/classes/Web/CookieManager/ErrorOverrideOK.html +0 -94
  1155. data/doc/api/more/classes/Web/CookieManager/NoDotError.html +0 -94
  1156. data/doc/api/more/classes/Web/CookieManager/SpecialError.html +0 -94
  1157. data/doc/api/more/classes/Web/CookieUtils.html +0 -179
  1158. data/doc/api/more/classes/XMLBuilder.html +0 -132
  1159. data/doc/api/more/classes/XMLHelper.html +0 -428
  1160. data/doc/api/more/classes/XOXO.html +0 -251
  1161. data/doc/api/more/classes/YAMLStruct.html +0 -166
  1162. data/doc/api/more/created.rid +0 -1
  1163. data/doc/api/more/files/COPYING.html +0 -517
  1164. data/doc/api/more/files/README.html +0 -389
  1165. data/doc/api/more/files/lib/facets/more/annattr_rb.html +0 -116
  1166. data/doc/api/more/files/lib/facets/more/annotation_rb.html +0 -117
  1167. data/doc/api/more/files/lib/facets/more/ansicode_rb.html +0 -128
  1168. data/doc/api/more/files/lib/facets/more/aspects_rb.html +0 -115
  1169. data/doc/api/more/files/lib/facets/more/association_rb.html +0 -111
  1170. data/doc/api/more/files/lib/facets/more/basicobject_rb.html +0 -129
  1171. data/doc/api/more/files/lib/facets/more/bbcode_rb.html +0 -111
  1172. data/doc/api/more/files/lib/facets/more/binaryreader_rb.html +0 -111
  1173. data/doc/api/more/files/lib/facets/more/bitmask_rb.html +0 -111
  1174. data/doc/api/more/files/lib/facets/more/blankslate_rb.html +0 -113
  1175. data/doc/api/more/files/lib/facets/more/builderobject_rb.html +0 -115
  1176. data/doc/api/more/files/lib/facets/more/bytes_rb.html +0 -131
  1177. data/doc/api/more/files/lib/facets/more/classmethods_rb.html +0 -121
  1178. data/doc/api/more/files/lib/facets/more/cloneable_rb.html +0 -132
  1179. data/doc/api/more/files/lib/facets/more/command_rb.html +0 -119
  1180. data/doc/api/more/files/lib/facets/more/cookie_rb.html +0 -136
  1181. data/doc/api/more/files/lib/facets/more/coroutine_rb.html +0 -111
  1182. data/doc/api/more/files/lib/facets/more/crypt_rb.html +0 -146
  1183. data/doc/api/more/files/lib/facets/more/dictionary_rb.html +0 -123
  1184. data/doc/api/more/files/lib/facets/more/downloader_rb.html +0 -124
  1185. data/doc/api/more/files/lib/facets/more/elementor_rb.html +0 -115
  1186. data/doc/api/more/files/lib/facets/more/enumerablepass_rb.html +0 -115
  1187. data/doc/api/more/files/lib/facets/more/expirable_rb.html +0 -111
  1188. data/doc/api/more/files/lib/facets/more/filelist_rb.html +0 -128
  1189. data/doc/api/more/files/lib/facets/more/floatstring_rb.html +0 -115
  1190. data/doc/api/more/files/lib/facets/more/functor_rb.html +0 -116
  1191. data/doc/api/more/files/lib/facets/more/hashbuilder_rb.html +0 -115
  1192. data/doc/api/more/files/lib/facets/more/heap_rb.html +0 -131
  1193. data/doc/api/more/files/lib/facets/more/htmlbuilder_rb.html +0 -116
  1194. data/doc/api/more/files/lib/facets/more/htmlhelper_rb.html +0 -119
  1195. data/doc/api/more/files/lib/facets/more/http_rb.html +0 -116
  1196. data/doc/api/more/files/lib/facets/more/httpaccess_rb.html +0 -137
  1197. data/doc/api/more/files/lib/facets/more/inheritor_rb.html +0 -115
  1198. data/doc/api/more/files/lib/facets/more/interval_rb.html +0 -120
  1199. data/doc/api/more/files/lib/facets/more/ioredirect_rb.html +0 -116
  1200. data/doc/api/more/files/lib/facets/more/json_rb.html +0 -141
  1201. data/doc/api/more/files/lib/facets/more/lazy_rb.html +0 -111
  1202. data/doc/api/more/files/lib/facets/more/lisp_format_rb.html +0 -129
  1203. data/doc/api/more/files/lib/facets/more/lisp_rb.html +0 -119
  1204. data/doc/api/more/files/lib/facets/more/lrucache_rb.html +0 -111
  1205. data/doc/api/more/files/lib/facets/more/mathconstants_rb.html +0 -121
  1206. data/doc/api/more/files/lib/facets/more/methodprobe_rb.html +0 -111
  1207. data/doc/api/more/files/lib/facets/more/mock_rb.html +0 -208
  1208. data/doc/api/more/files/lib/facets/more/multipliers_rb.html +0 -115
  1209. data/doc/api/more/files/lib/facets/more/multiton_rb.html +0 -114
  1210. data/doc/api/more/files/lib/facets/more/nackclass_rb.html +0 -151
  1211. data/doc/api/more/files/lib/facets/more/nilcomparable_rb.html +0 -118
  1212. data/doc/api/more/files/lib/facets/more/nullclass_rb.html +0 -111
  1213. data/doc/api/more/files/lib/facets/more/one_rb.html +0 -158
  1214. data/doc/api/more/files/lib/facets/more/opencascade_rb.html +0 -129
  1215. data/doc/api/more/files/lib/facets/more/openobject_rb.html +0 -120
  1216. data/doc/api/more/files/lib/facets/more/orderedhash_rb.html +0 -113
  1217. data/doc/api/more/files/lib/facets/more/ormsupport_rb.html +0 -125
  1218. data/doc/api/more/files/lib/facets/more/overload_rb.html +0 -111
  1219. data/doc/api/more/files/lib/facets/more/paramix_rb.html +0 -118
  1220. data/doc/api/more/files/lib/facets/more/pathlist_rb.html +0 -111
  1221. data/doc/api/more/files/lib/facets/more/pool_rb.html +0 -120
  1222. data/doc/api/more/files/lib/facets/more/pqueue_rb.html +0 -122
  1223. data/doc/api/more/files/lib/facets/more/preinitialize_rb.html +0 -115
  1224. data/doc/api/more/files/lib/facets/more/progressbar_rb.html +0 -111
  1225. data/doc/api/more/files/lib/facets/more/promoteself_rb.html +0 -111
  1226. data/doc/api/more/files/lib/facets/more/quaternion_rb.html +0 -150
  1227. data/doc/api/more/files/lib/facets/more/recorder_rb.html +0 -115
  1228. data/doc/api/more/files/lib/facets/more/reference_rb.html +0 -115
  1229. data/doc/api/more/files/lib/facets/more/rexmlbuilder_rb.html +0 -116
  1230. data/doc/api/more/files/lib/facets/more/rtals_rb.html +0 -115
  1231. data/doc/api/more/files/lib/facets/more/semaphore_rb.html +0 -111
  1232. data/doc/api/more/files/lib/facets/more/snapshot_rb.html +0 -121
  1233. data/doc/api/more/files/lib/facets/more/stateparser_rb.html +0 -115
  1234. data/doc/api/more/files/lib/facets/more/statichash_rb.html +0 -133
  1235. data/doc/api/more/files/lib/facets/more/syncarray_rb.html +0 -115
  1236. data/doc/api/more/files/lib/facets/more/synchash_rb.html +0 -115
  1237. data/doc/api/more/files/lib/facets/more/system_rb.html +0 -123
  1238. data/doc/api/more/files/lib/facets/more/tagiterator_rb.html +0 -111
  1239. data/doc/api/more/files/lib/facets/more/taskable_rb.html +0 -118
  1240. data/doc/api/more/files/lib/facets/more/timer_rb.html +0 -127
  1241. data/doc/api/more/files/lib/facets/more/times_rb.html +0 -127
  1242. data/doc/api/more/files/lib/facets/more/tracepoint_rb.html +0 -131
  1243. data/doc/api/more/files/lib/facets/more/tuple_rb.html +0 -122
  1244. data/doc/api/more/files/lib/facets/more/typecast_rb.html +0 -133
  1245. data/doc/api/more/files/lib/facets/more/uninheritable_rb.html +0 -111
  1246. data/doc/api/more/files/lib/facets/more/units_rb.html +0 -118
  1247. data/doc/api/more/files/lib/facets/more/xmlbuilder_rb.html +0 -116
  1248. data/doc/api/more/files/lib/facets/more/xmlhelper_rb.html +0 -111
  1249. data/doc/api/more/files/lib/facets/more/xoxo_rb.html +0 -125
  1250. data/doc/api/more/files/lib/facets/more/yamlstruct_rb.html +0 -123
  1251. data/doc/api/more/fr_class_index.html +0 -196
  1252. data/doc/api/more/fr_file_index.html +0 -133
  1253. data/doc/api/more/fr_method_index.html +0 -1284
  1254. data/doc/api/more/index.html +0 -26
  1255. data/doc/api/more/rdoc-style.css +0 -175
  1256. data/doc/web/documentation.html +0 -174
  1257. data/doc/web/images/abc.png +0 -0
  1258. data/doc/web/images/abc1.png +0 -0
  1259. data/doc/web/images/apple_core.jpg +0 -0
  1260. data/doc/web/images/apples3.jpg +0 -0
  1261. data/doc/web/images/core.jpg +0 -0
  1262. data/doc/web/images/favicon.ico +0 -0
  1263. data/doc/web/images/gray.jpg +0 -0
  1264. data/doc/web/images/ruby-lg.png +0 -0
  1265. data/doc/web/images/ruby.gif +0 -0
  1266. data/doc/web/images/three_apples.jpg +0 -0
  1267. data/doc/web/images/yellow_fade.jpg +0 -0
  1268. data/doc/web/images/yellow_fade2.jpg +0 -0
  1269. data/doc/web/index.html +0 -224
  1270. data/doc/web/style.css +0 -153
  1271. data/lib/facet/blankslate.rb +0 -1
  1272. data/lib/facet/hash/symoblize_keys.rb +0 -1
  1273. data/lib/facet/kernel/generate_method_name.rb +0 -1
  1274. data/lib/facet/module/generate_instance_method_name.rb +0 -1
  1275. data/lib/facets/core/hash/symoblize_keys.rb +0 -2
  1276. data/lib/facets/core/kernel/generate_method_name.rb +0 -39
  1277. data/lib/facets/core/module/generate_instance_method_name.rb +0 -47
  1278. data/lib/facets/more/blankslate.rb +0 -7
  1279. data/proj/calibre/ProjectInfo.annotation +0 -46
  1280. data/proj/calibre/ProjectInfo.ansicode +0 -33
  1281. data/proj/calibre/ProjectInfo.asociation +0 -34
  1282. data/proj/calibre/ProjectInfo.basicobject +0 -36
  1283. data/proj/calibre/ProjectInfo.bbcode +0 -34
  1284. data/proj/calibre/ProjectInfo.binaryreader +0 -35
  1285. data/proj/calibre/ProjectInfo.bitmask +0 -33
  1286. data/proj/calibre/ProjectInfo.classinherit +0 -36
  1287. data/proj/calibre/ProjectInfo.classmethods +0 -36
  1288. data/proj/calibre/ProjectInfo.cloneable +0 -33
  1289. data/proj/calibre/ProjectInfo.consoleapp +0 -35
  1290. data/proj/calibre/ProjectInfo.coroutine +0 -37
  1291. data/proj/calibre/ProjectInfo.crypt +0 -33
  1292. data/proj/calibre/ProjectInfo.dictionary +0 -40
  1293. data/proj/calibre/ProjectInfo.downloader +0 -39
  1294. data/proj/calibre/ProjectInfo.enumerablepass +0 -35
  1295. data/proj/calibre/ProjectInfo.expirable +0 -37
  1296. data/proj/calibre/ProjectInfo.floatstring +0 -35
  1297. data/proj/calibre/ProjectInfo.functor +0 -40
  1298. data/proj/calibre/ProjectInfo.heap +0 -33
  1299. data/proj/calibre/ProjectInfo.inheritor +0 -36
  1300. data/proj/calibre/ProjectInfo.interval +0 -36
  1301. data/proj/calibre/ProjectInfo.lisp +0 -38
  1302. data/proj/calibre/ProjectInfo.lrucache +0 -34
  1303. data/proj/calibre/ProjectInfo.mathconstants +0 -41
  1304. data/proj/calibre/ProjectInfo.methodprobe +0 -38
  1305. data/proj/calibre/ProjectInfo.mock +0 -34
  1306. data/proj/calibre/ProjectInfo.multiton +0 -36
  1307. data/proj/calibre/ProjectInfo.nackclass +0 -33
  1308. data/proj/calibre/ProjectInfo.nilcomparable +0 -35
  1309. data/proj/calibre/ProjectInfo.nullclass +0 -35
  1310. data/proj/calibre/ProjectInfo.one +0 -37
  1311. data/proj/calibre/ProjectInfo.openobject +0 -39
  1312. data/proj/calibre/ProjectInfo.paramix +0 -38
  1313. data/proj/calibre/ProjectInfo.pool +0 -33
  1314. data/proj/calibre/ProjectInfo.progressbar +0 -37
  1315. data/proj/calibre/ProjectInfo.reference +0 -36
  1316. data/proj/calibre/ProjectInfo.semaphore +0 -36
  1317. data/proj/calibre/ProjectInfo.stateparser +0 -39
  1318. data/proj/calibre/ProjectInfo.statichash +0 -33
  1319. data/proj/calibre/ProjectInfo.system +0 -34
  1320. data/proj/calibre/ProjectInfo.tagiterator +0 -36
  1321. data/proj/calibre/ProjectInfo.timer +0 -35
  1322. data/proj/calibre/ProjectInfo.tracepoint +0 -37
  1323. data/proj/calibre/ProjectInfo.tuple +0 -36
  1324. data/proj/calibre/ProjectInfo.uniheritable +0 -34
  1325. data/proj/calibre/ProjectInfo.units +0 -34
  1326. data/proj/calibre/ProjectInfo.yamlstruct +0 -34
  1327. data/proj/info +0 -117
  1328. data/proj/metadata +0 -36
  1329. data/proj/tasks/calibre.rb +0 -15
  1330. data/snip/ProjectInfo +0 -115
  1331. data/snip/README +0 -13
  1332. data/snip/TODO +0 -73
  1333. data/snip/autorequire.rb +0 -83
  1334. data/snip/core/array/at_rand.rb +0 -95
  1335. data/snip/core/array/each_slice.rb +0 -23
  1336. data/snip/core/array/pick_values.rb +0 -32
  1337. data/snip/core/array/rand_indexes.rb +0 -33
  1338. data/snip/core/binding/class.rb +0 -11
  1339. data/snip/core/binding/delegate-binding.rb +0 -19
  1340. data/snip/core/binding/delegate.rb +0 -15
  1341. data/snip/core/binding/proc.rb +0 -6
  1342. data/snip/core/class/to_module.rb +0 -3
  1343. data/snip/core/enumerable/op_fetch.rb +0 -30
  1344. data/snip/core/fileutils/nl_convert.rb +0 -133
  1345. data/snip/core/io/expect.rb +0 -127
  1346. data/snip/core/kernel/__clone__.rb +0 -4
  1347. data/snip/core/kernel/__dup__.rb +0 -4
  1348. data/snip/core/kernel/call_line.rb +0 -15
  1349. data/snip/core/kernel/does.rb +0 -7
  1350. data/snip/core/kernel/message.rb +0 -6
  1351. data/snip/core/kernel/query.rb +0 -15
  1352. data/snip/core/kernel/taint.rb +0 -10
  1353. data/snip/core/logger/clean_logger.rb +0 -10
  1354. data/snip/core/module/attr-old.rb +0 -308
  1355. data/snip/core/module/attr.rb +0 -98
  1356. data/snip/core/module/attr_xxx.rb +0 -22
  1357. data/snip/core/module/by_regexp.rb +0 -21
  1358. data/snip/core/module/cast.rb +0 -64
  1359. data/snip/core/module/class_attribute_accessors.rb +0 -57
  1360. data/snip/core/module/inherit.rb +0 -99
  1361. data/snip/core/module/inherit0.rb +0 -59
  1362. data/snip/core/module/let.rb +0 -51
  1363. data/snip/core/module/meta_attr.rb +0 -60
  1364. data/snip/core/module/module_attribute_accessors.rb +0 -57
  1365. data/snip/core/module/permissions.rb +0 -32
  1366. data/snip/core/module/preserved.rb +0 -108
  1367. data/snip/core/module/sattr_accessor.rb +0 -1
  1368. data/snip/core/module/sattr_reader.rb +0 -1
  1369. data/snip/core/module/sattr_setter.rb +0 -1
  1370. data/snip/core/module/sattr_tester.rb +0 -1
  1371. data/snip/core/module/sattr_writer.rb +0 -1
  1372. data/snip/core/module/tc_attr.rb +0 -107
  1373. data/snip/core/module/to_module.rb +0 -37
  1374. data/snip/core/module/version.rb +0 -23
  1375. data/snip/core/string/frequency.rb +0 -40
  1376. data/snip/core/string/op_add.rb +0 -24
  1377. data/snip/core/string/op_div.rb +0 -15
  1378. data/snip/core/string/pred.rb +0 -217
  1379. data/snip/core/string/probability.rb +0 -35
  1380. data/snip/core/string/to_arr.rb +0 -57
  1381. data/snip/core/string/to_ary.rb +0 -12
  1382. data/snip/core/string/word_wrap.rb +0 -62
  1383. data/snip/more/actionplan.rb +0 -21
  1384. data/snip/more/autoarray.rb +0 -29
  1385. data/snip/more/cache.rb +0 -189
  1386. data/snip/more/capsule2.rb +0 -152
  1387. data/snip/more/class_inheritable_attributes.rb +0 -120
  1388. data/snip/more/classinherit.rb +0 -198
  1389. data/snip/more/clean.rb +0 -35
  1390. data/snip/more/codepack.rb +0 -64
  1391. data/snip/more/commandrunner.rb +0 -101
  1392. data/snip/more/conditionals.rb +0 -106
  1393. data/snip/more/contracts.rb +0 -37
  1394. data/snip/more/daemon.rb +0 -70
  1395. data/snip/more/datetime.rb +0 -42
  1396. data/snip/more/detach.rb +0 -423
  1397. data/snip/more/enumtype.rb +0 -115
  1398. data/snip/more/fixnum_const.rb +0 -55
  1399. data/snip/more/function.rb +0 -278
  1400. data/snip/more/hookse.rb +0 -107
  1401. data/snip/more/indexable.rb +0 -85
  1402. data/snip/more/infinity.rb +0 -123
  1403. data/snip/more/ioreactor.rb +0 -671
  1404. data/snip/more/knowself.rb +0 -42
  1405. data/snip/more/logger_sing.rb +0 -207
  1406. data/snip/more/must.rb +0 -37
  1407. data/snip/more/openproxy.rb +0 -245
  1408. data/snip/more/ostructable.rb +0 -212
  1409. data/snip/more/pairhash.rb +0 -55
  1410. data/snip/more/pathname.rb +0 -1309
  1411. data/snip/more/prereq.rb +0 -36
  1412. data/snip/more/print_exception.rb +0 -35
  1413. data/snip/more/rand.rb +0 -412
  1414. data/snip/more/range.rb +0 -383
  1415. data/snip/more/sanitize.rb +0 -48
  1416. data/snip/more/service.rb +0 -266
  1417. data/snip/more/superstruct.rb +0 -735
  1418. data/snip/more/tag.rb +0 -27
  1419. data/snip/more/testfacility.rb +0 -80
  1420. data/snip/more/timer.rb +0 -164
  1421. data/snip/more/toplevel.rb +0 -76
  1422. data/snip/more/type.rb +0 -232
  1423. data/snip/more/vars.rb +0 -94
  1424. data/snip/more/version.rb +0 -245
  1425. data/snip/more/world.rb +0 -53
  1426. data/snip/reference/sys.rb +0 -186
  1427. data/snip/reference/utils.rb +0 -518
  1428. data/test/lib/facets/core/kernel/test_generate_method_name.rb +0 -26
  1429. data/test/lib/facets/core/module/test_generate_instance_method_name.rb +0 -33
@@ -1,157 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
- <html>
6
- <head>
7
- <title>Class: Float</title>
8
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
10
-
11
- <script language="JavaScript" type="text/javascript">
12
- // <![CDATA[
13
-
14
- function toggleSource( id )
15
- {
16
- var elem
17
- var link
18
-
19
- if( document.getElementById )
20
- {
21
- elem = document.getElementById( id )
22
- link = document.getElementById( "l_" + id )
23
- }
24
- else if ( document.all )
25
- {
26
- elem = eval( "document.all." + id )
27
- link = eval( "document.all.l_" + id )
28
- }
29
- else
30
- return false;
31
-
32
- if( elem.style.display == "block" )
33
- {
34
- elem.style.display = "none"
35
- link.innerHTML = "show source"
36
- }
37
- else
38
- {
39
- elem.style.display = "block"
40
- link.innerHTML = "hide source"
41
- }
42
- }
43
-
44
- function openCode( url )
45
- {
46
- window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
47
- }
48
- // ]]>
49
- </script>
50
- </head>
51
-
52
- <body>
53
- <table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
54
- <td class="file-title"><span class="file-title-prefix">Class</span><br />Float</td>
55
- <td align="right">
56
- <table cellspacing=0 cellpadding=2>
57
- <tr valign="top">
58
- <td>In:</td>
59
- <td>
60
- <a href="../files/lib/facets/core/float/round_at_rb.html">lib/facets/core/float/round_at.rb</a>
61
- <a href="../files/lib/facets/core/float/round_to_rb.html">lib/facets/core/float/round_to.rb</a>
62
- <a href="../files/lib/facets/core/float/round_off_rb.html">lib/facets/core/float/round_off.rb</a>
63
- </td>
64
- </tr>
65
- <tr>
66
- <td>Parent:</td>
67
- <td>
68
- <a href="Object.html">
69
- Object
70
- </a>
71
- </td>
72
- </tr>
73
- </table>
74
- </td>
75
- </tr>
76
- </table>
77
- <!-- banner header -->
78
-
79
- <div id="bodyContent">
80
- <div id="content">
81
-
82
-
83
-
84
-
85
- <div class="sectiontitle">Methods</div>
86
- <ul>
87
- <li><a href="#M000204">round_at</a></li>
88
- <li><a href="#M000205">round_to</a></li>
89
- </ul>
90
-
91
-
92
-
93
-
94
-
95
-
96
- <div class="sectiontitle">Public Instance methods</div>
97
- <div class="method">
98
- <div class="title">
99
- <a name="M000204"></a><b>round_at</b>( d )
100
- </div>
101
- <div class="description">
102
- <p>
103
- Rounds to the given decimal position.
104
- </p>
105
- <pre>
106
- 4.555.round_at(0) #=&gt; 5.0
107
- 4.555.round_at(1) #=&gt; 4.6
108
- 4.555.round_at(2) #=&gt; 4.56
109
- 4.555.round_at(3) #=&gt; 4.555
110
- </pre>
111
- </div>
112
- <div class="sourcecode">
113
- <p class="source-link">[ <a href="javascript:toggleSource('M000204_source')" id="l_M000204_source">show source</a> ]</p>
114
- <div id="M000204_source" class="dyn-source">
115
- <pre>
116
- <span class="ruby-comment cmt"># File lib/facets/core/float/round_at.rb, line 13</span>
117
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">round_at</span>( <span class="ruby-identifier">d</span> ) <span class="ruby-comment cmt">#d=0</span>
118
- (<span class="ruby-keyword kw">self</span> <span class="ruby-operator">*</span> (<span class="ruby-value">10.0</span> <span class="ruby-operator">**</span> <span class="ruby-identifier">d</span>)).<span class="ruby-identifier">round_off</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> (<span class="ruby-value">10.0</span> <span class="ruby-operator">**</span> <span class="ruby-identifier">d</span>)
119
- <span class="ruby-keyword kw">end</span>
120
- </pre>
121
- </div>
122
- </div>
123
- </div>
124
- <div class="method">
125
- <div class="title">
126
- <a name="M000205"></a><b>round_to</b>( n )
127
- </div>
128
- <div class="description">
129
- <p>
130
- Rounds to the nearest _n_th degree.
131
- </p>
132
- <pre>
133
- 4.555.round_to(1) #=&gt; 5.0
134
- 4.555.round_to(0.1) #=&gt; 4.6
135
- 4.555.round_to(0.01) #=&gt; 4.56
136
- 4.555.round_to(0) #=&gt; 4.555
137
- </pre>
138
- </div>
139
- <div class="sourcecode">
140
- <p class="source-link">[ <a href="javascript:toggleSource('M000205_source')" id="l_M000205_source">show source</a> ]</p>
141
- <div id="M000205_source" class="dyn-source">
142
- <pre>
143
- <span class="ruby-comment cmt"># File lib/facets/core/float/round_to.rb, line 13</span>
144
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">round_to</span>( <span class="ruby-identifier">n</span> ) <span class="ruby-comment cmt">#n=1</span>
145
- <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">self</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">n</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
146
- (<span class="ruby-keyword kw">self</span> <span class="ruby-operator">*</span> (<span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">n</span>)).<span class="ruby-identifier">round_off</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> (<span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">n</span>)
147
- <span class="ruby-keyword kw">end</span>
148
- </pre>
149
- </div>
150
- </div>
151
- </div>
152
- </div>
153
-
154
- </div>
155
-
156
- </body>
157
- </html>
@@ -1,150 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
- <html>
6
- <head>
7
- <title>Module: Gem</title>
8
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
10
-
11
- <script language="JavaScript" type="text/javascript">
12
- // <![CDATA[
13
-
14
- function toggleSource( id )
15
- {
16
- var elem
17
- var link
18
-
19
- if( document.getElementById )
20
- {
21
- elem = document.getElementById( id )
22
- link = document.getElementById( "l_" + id )
23
- }
24
- else if ( document.all )
25
- {
26
- elem = eval( "document.all." + id )
27
- link = eval( "document.all.l_" + id )
28
- }
29
- else
30
- return false;
31
-
32
- if( elem.style.display == "block" )
33
- {
34
- elem.style.display = "none"
35
- link.innerHTML = "show source"
36
- }
37
- else
38
- {
39
- elem.style.display = "block"
40
- link.innerHTML = "hide source"
41
- }
42
- }
43
-
44
- function openCode( url )
45
- {
46
- window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
47
- }
48
- // ]]>
49
- </script>
50
- </head>
51
-
52
- <body>
53
- <table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
54
- <td class="file-title"><span class="file-title-prefix">Module</span><br />Gem</td>
55
- <td align="right">
56
- <table cellspacing=0 cellpadding=2>
57
- <tr valign="top">
58
- <td>In:</td>
59
- <td>
60
- <a href="../files/lib/facets/core/gem/self/active_rb.html">lib/facets/core/gem/self/active.rb</a>
61
- <a href="../files/lib/facets/core/gem/self/gemspec_rb.html">lib/facets/core/gem/self/gemspec.rb</a>
62
- <a href="../files/lib/facets/core/gem/self/gempath_rb.html">lib/facets/core/gem/self/gempath.rb</a>
63
- </td>
64
- </tr>
65
- </table>
66
- </td>
67
- </tr>
68
- </table>
69
- <!-- banner header -->
70
-
71
- <div id="bodyContent">
72
- <div id="content">
73
-
74
-
75
-
76
-
77
- <div class="sectiontitle">Methods</div>
78
- <ul>
79
- <li><a href="#M000399">active?</a></li>
80
- <li><a href="#M000401">gempath</a></li>
81
- <li><a href="#M000400">gemspec</a></li>
82
- </ul>
83
-
84
-
85
-
86
-
87
-
88
-
89
- <div class="sectiontitle">Public Class methods</div>
90
- <div class="method">
91
- <div class="title">
92
- <a name="M000399"></a><b>active?</b>(gemname)
93
- </div>
94
- <div class="sourcecode">
95
- <p class="source-link">[ <a href="javascript:toggleSource('M000399_source')" id="l_M000399_source">show source</a> ]</p>
96
- <div id="M000399_source" class="dyn-source">
97
- <pre>
98
- <span class="ruby-comment cmt"># File lib/facets/core/gem/self/active.rb, line 4</span>
99
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">active?</span>(<span class="ruby-identifier">gemname</span>)
100
- <span class="ruby-ivar">@loaded_specs</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
101
- <span class="ruby-ivar">@loaded_specs</span>.<span class="ruby-identifier">key?</span> <span class="ruby-identifier">gemname</span>
102
- <span class="ruby-keyword kw">end</span>
103
- </pre>
104
- </div>
105
- </div>
106
- </div>
107
- <div class="method">
108
- <div class="title">
109
- <a name="M000401"></a><b>gempath</b>(gemname, subdir=nil)
110
- </div>
111
- <div class="sourcecode">
112
- <p class="source-link">[ <a href="javascript:toggleSource('M000401_source')" id="l_M000401_source">show source</a> ]</p>
113
- <div id="M000401_source" class="dyn-source">
114
- <pre>
115
- <span class="ruby-comment cmt"># File lib/facets/core/gem/self/gempath.rb, line 6</span>
116
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">gempath</span>(<span class="ruby-identifier">gemname</span>, <span class="ruby-identifier">subdir</span>=<span class="ruby-keyword kw">nil</span>)
117
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">active?</span>(<span class="ruby-identifier">gemname</span>)
118
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">subdir</span>
119
- <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>( <span class="ruby-ivar">@loaded_specs</span>[<span class="ruby-identifier">gemname</span>].<span class="ruby-identifier">full_gem_path</span>, <span class="ruby-identifier">subdir</span> )
120
- <span class="ruby-keyword kw">else</span>
121
- <span class="ruby-ivar">@loaded_specs</span>[<span class="ruby-identifier">gemname</span>].<span class="ruby-identifier">full_gem_path</span>
122
- <span class="ruby-keyword kw">end</span>
123
- <span class="ruby-keyword kw">end</span>
124
- <span class="ruby-keyword kw">end</span>
125
- </pre>
126
- </div>
127
- </div>
128
- </div>
129
- <div class="method">
130
- <div class="title">
131
- <a name="M000400"></a><b>gemspec</b>(gemname)
132
- </div>
133
- <div class="sourcecode">
134
- <p class="source-link">[ <a href="javascript:toggleSource('M000400_source')" id="l_M000400_source">show source</a> ]</p>
135
- <div id="M000400_source" class="dyn-source">
136
- <pre>
137
- <span class="ruby-comment cmt"># File lib/facets/core/gem/self/gemspec.rb, line 6</span>
138
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">gemspec</span>(<span class="ruby-identifier">gemname</span>)
139
- <span class="ruby-ivar">@loaded_specs</span>[<span class="ruby-identifier">gemname</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">active?</span>(<span class="ruby-identifier">gemname</span>)
140
- <span class="ruby-keyword kw">end</span>
141
- </pre>
142
- </div>
143
- </div>
144
- </div>
145
- </div>
146
-
147
- </div>
148
-
149
- </body>
150
- </html>
@@ -1,1627 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
- <html>
6
- <head>
7
- <title>Class: Hash</title>
8
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
10
-
11
- <script language="JavaScript" type="text/javascript">
12
- // <![CDATA[
13
-
14
- function toggleSource( id )
15
- {
16
- var elem
17
- var link
18
-
19
- if( document.getElementById )
20
- {
21
- elem = document.getElementById( id )
22
- link = document.getElementById( "l_" + id )
23
- }
24
- else if ( document.all )
25
- {
26
- elem = eval( "document.all." + id )
27
- link = eval( "document.all.l_" + id )
28
- }
29
- else
30
- return false;
31
-
32
- if( elem.style.display == "block" )
33
- {
34
- elem.style.display = "none"
35
- link.innerHTML = "show source"
36
- }
37
- else
38
- {
39
- elem.style.display = "block"
40
- link.innerHTML = "hide source"
41
- }
42
- }
43
-
44
- function openCode( url )
45
- {
46
- window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
47
- }
48
- // ]]>
49
- </script>
50
- </head>
51
-
52
- <body>
53
- <table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
54
- <td class="file-title"><span class="file-title-prefix">Class</span><br />Hash</td>
55
- <td align="right">
56
- <table cellspacing=0 cellpadding=2>
57
- <tr valign="top">
58
- <td>In:</td>
59
- <td>
60
- <a href="../files/lib/facets/core/hash/collate_rb.html">lib/facets/core/hash/collate.rb</a>
61
- <a href="../files/lib/facets/core/hash/assert_has_keys_rb.html">lib/facets/core/hash/assert_has_keys.rb</a>
62
- <a href="../files/lib/facets/core/hash/each_with_key_rb.html">lib/facets/core/hash/each_with_key.rb</a>
63
- <a href="../files/lib/facets/core/hash/join_rb.html">lib/facets/core/hash/join.rb</a>
64
- <a href="../files/lib/facets/core/hash/at_rb.html">lib/facets/core/hash/at.rb</a>
65
- <a href="../files/lib/facets/core/hash/each_rb.html">lib/facets/core/hash/each.rb</a>
66
- <a href="../files/lib/facets/core/hash/each_with_index_rb.html">lib/facets/core/hash/each_with_index.rb</a>
67
- <a href="../files/lib/facets/core/hash/graph_rb.html">lib/facets/core/hash/graph.rb</a>
68
- <a href="../files/lib/facets/core/hash/to_ostruct_rb.html">lib/facets/core/hash/to_ostruct.rb</a>
69
- <a href="../files/lib/facets/core/hash/update_values_rb.html">lib/facets/core/hash/update_values.rb</a>
70
- <a href="../files/lib/facets/core/hash/inverse_rb.html">lib/facets/core/hash/inverse.rb</a>
71
- <a href="../files/lib/facets/core/hash/rand_value_rb.html">lib/facets/core/hash/rand_value.rb</a>
72
- <a href="../files/lib/facets/core/hash/assert_has_only_keys_rb.html">lib/facets/core/hash/assert_has_only_keys.rb</a>
73
- <a href="../files/lib/facets/core/hash/keys_to_sym_rb.html">lib/facets/core/hash/keys_to_sym.rb</a>
74
- <a href="../files/lib/facets/core/hash/delete_unless_rb.html">lib/facets/core/hash/delete_unless.rb</a>
75
- <a href="../files/lib/facets/core/hash/has_only_keys_rb.html">lib/facets/core/hash/has_only_keys.rb</a>
76
- <a href="../files/lib/facets/core/hash/replace_each_rb.html">lib/facets/core/hash/replace_each.rb</a>
77
- <a href="../files/lib/facets/core/hash/swap_rb.html">lib/facets/core/hash/swap.rb</a>
78
- <a href="../files/lib/facets/core/hash/rand_key_rb.html">lib/facets/core/hash/rand_key.rb</a>
79
- <a href="../files/lib/facets/core/hash/to_h_rb.html">lib/facets/core/hash/to_h.rb</a>
80
- <a href="../files/lib/facets/core/hash/variablize_keys_rb.html">lib/facets/core/hash/variablize_keys.rb</a>
81
- <a href="../files/lib/facets/core/hash/slice_rb.html">lib/facets/core/hash/slice.rb</a>
82
- <a href="../files/lib/facets/core/hash/traverse_rb.html">lib/facets/core/hash/traverse.rb</a>
83
- <a href="../files/lib/facets/core/hash/shuffle_rb.html">lib/facets/core/hash/shuffle.rb</a>
84
- <a href="../files/lib/facets/core/hash/alias_rb.html">lib/facets/core/hash/alias.rb</a>
85
- <a href="../files/lib/facets/core/hash/op_fetch_rb.html">lib/facets/core/hash/op_fetch.rb</a>
86
- <a href="../files/lib/facets/core/hash/has_keys_rb.html">lib/facets/core/hash/has_keys.rb</a>
87
- <a href="../files/lib/facets/core/hash/to_ostruct_recurse_rb.html">lib/facets/core/hash/to_ostruct_recurse.rb</a>
88
- <a href="../files/lib/facets/core/hash/swapkey_rb.html">lib/facets/core/hash/swapkey.rb</a>
89
- <a href="../files/lib/facets/core/hash/keys_to_s_rb.html">lib/facets/core/hash/keys_to_s.rb</a>
90
- <a href="../files/lib/facets/core/hash/weave_rb.html">lib/facets/core/hash/weave.rb</a>
91
- <a href="../files/lib/facets/core/hash/op_lshift_rb.html">lib/facets/core/hash/op_lshift.rb</a>
92
- <a href="../files/lib/facets/core/hash/update_keys_rb.html">lib/facets/core/hash/update_keys.rb</a>
93
- <a href="../files/lib/facets/core/hash/rand_pair_rb.html">lib/facets/core/hash/rand_pair.rb</a>
94
- <a href="../files/lib/facets/core/hash/update_each_rb.html">lib/facets/core/hash/update_each.rb</a>
95
- <a href="../files/lib/facets/core/hash/to_proc_rb.html">lib/facets/core/hash/to_proc.rb</a>
96
- <a href="../files/lib/facets/core/hash/self/zipnew_rb.html">lib/facets/core/hash/self/zipnew.rb</a>
97
- </td>
98
- </tr>
99
- <tr>
100
- <td>Parent:</td>
101
- <td>
102
- <a href="Object.html">
103
- Object
104
- </a>
105
- </td>
106
- </tr>
107
- </table>
108
- </td>
109
- </tr>
110
- </table>
111
- <!-- banner header -->
112
-
113
- <div id="bodyContent">
114
- <div id="content">
115
-
116
-
117
-
118
-
119
- <div class="sectiontitle">Methods</div>
120
- <ul>
121
- <li><a href="#M000084">[]</a></li>
122
- <li><a href="#M000085">[]=</a></li>
123
- <li><a href="#M000083">alias!</a></li>
124
- <li><a href="#M000050">assert_has_keys</a></li>
125
- <li><a href="#M000064">assert_has_only_keys</a></li>
126
- <li><a href="#M000062">at_rand</a></li>
127
- <li><a href="#M000063">at_rand!</a></li>
128
- <li><a href="#M000048">collate</a></li>
129
- <li><a href="#M000049">collate!</a></li>
130
- <li><a href="#M000069">delete_unless</a></li>
131
- <li><a href="#M000053">each</a></li>
132
- <li><a href="#M000054">each_with_index</a></li>
133
- <li><a href="#M000051">each_with_key</a></li>
134
- <li><a href="#M000055">graph!</a></li>
135
- <li><a href="#M000086">has_keys?</a></li>
136
- <li><a href="#M000070">has_only_keys?</a></li>
137
- <li><a href="#M000058">inverse</a></li>
138
- <li><a href="#M000052">join</a></li>
139
- <li><a href="#M000089">keys_to_s</a></li>
140
- <li><a href="#M000091">keys_to_s!</a></li>
141
- <li><a href="#M000065">keys_to_sym</a></li>
142
- <li><a href="#M000067">keys_to_sym!</a></li>
143
- <li><a href="#M000061">pick</a></li>
144
- <li><a href="#M000075">pick_key</a></li>
145
- <li><a href="#M000097">pick_pair</a></li>
146
- <li><a href="#M000073">rand_key</a></li>
147
- <li><a href="#M000074">rand_key!</a></li>
148
- <li><a href="#M000095">rand_pair</a></li>
149
- <li><a href="#M000096">rand_pair!</a></li>
150
- <li><a href="#M000059">rand_value</a></li>
151
- <li><a href="#M000060">rand_value!</a></li>
152
- <li><a href="#M000071">replace_each</a></li>
153
- <li><a href="#M000081">shuffle</a></li>
154
- <li><a href="#M000082">shuffle!</a></li>
155
- <li><a href="#M000090">stringify_keys</a></li>
156
- <li><a href="#M000092">stringify_keys!</a></li>
157
- <li><a href="#M000072">swap!</a></li>
158
- <li><a href="#M000088">swapkey!</a></li>
159
- <li><a href="#M000066">symbolize_keys</a></li>
160
- <li><a href="#M000068">symbolize_keys!</a></li>
161
- <li><a href="#M000076">to_h</a></li>
162
- <li><a href="#M000056">to_ostruct</a></li>
163
- <li><a href="#M000087">to_ostruct_recurse</a></li>
164
- <li><a href="#M000099">to_proc</a></li>
165
- <li><a href="#M000100">to_proc_with_reponse</a></li>
166
- <li><a href="#M000079">traverse</a></li>
167
- <li><a href="#M000080">traverse!</a></li>
168
- <li><a href="#M000098">update_each</a></li>
169
- <li><a href="#M000094">update_keys</a></li>
170
- <li><a href="#M000057">update_values</a></li>
171
- <li><a href="#M000077">variablize_keys</a></li>
172
- <li><a href="#M000078">variablize_keys!</a></li>
173
- <li><a href="#M000093">weave</a></li>
174
- <li><a href="#M000101">zipnew</a></li>
175
- </ul>
176
-
177
-
178
-
179
-
180
-
181
-
182
- <div class="sectiontitle">Public Class methods</div>
183
- <div class="method">
184
- <div class="title">
185
- <a name="M000101"></a><b>zipnew</b>(keys,values)
186
- </div>
187
- <div class="description">
188
- <p>
189
- Creates a new hash from two arrays &#8212;a keys array and a values array.
190
- </p>
191
- <pre>
192
- Hash.zipnew([&quot;a&quot;,&quot;b&quot;,&quot;c&quot;], [1,2,3])
193
- #=&gt; { &quot;a&quot;=&gt;1, &quot;b&quot;=&gt;2, &quot;c&quot;=&gt;3 }
194
- </pre>
195
- </div>
196
- <div class="sourcecode">
197
- <p class="source-link">[ <a href="javascript:toggleSource('M000101_source')" id="l_M000101_source">show source</a> ]</p>
198
- <div id="M000101_source" class="dyn-source">
199
- <pre>
200
- <span class="ruby-comment cmt"># File lib/facets/core/hash/self/zipnew.rb, line 9</span>
201
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">zipnew</span>(<span class="ruby-identifier">keys</span>,<span class="ruby-identifier">values</span>) <span class="ruby-comment cmt"># or some better name</span>
202
- <span class="ruby-identifier">h</span> = {}
203
- <span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span>.<span class="ruby-identifier">times</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">h</span>[ <span class="ruby-identifier">keys</span>[<span class="ruby-identifier">i</span>] ] = <span class="ruby-identifier">values</span>[<span class="ruby-identifier">i</span>] }
204
- <span class="ruby-identifier">h</span>
205
- <span class="ruby-keyword kw">end</span>
206
- </pre>
207
- </div>
208
- </div>
209
- </div>
210
- <div class="sectiontitle">Public Instance methods</div>
211
- <div class="method">
212
- <div class="title">
213
- <a name="M000084"></a><b>[]</b>( *sliceKeys )
214
- </div>
215
- <div class="description">
216
- <p>
217
- Adds slicing to <a href="Hash.html">Hash</a>#[]. If more than one key
218
- arguments is given to <tt><a href="Hash.html">Hash</a>#[]</tt>, the return
219
- value will be an array of the corresponding values.
220
- </p>
221
- <pre>
222
- h = { :a =&gt; 1, :b =&gt; 2, :c =&gt; 3 }
223
- h[:a] #=&gt; 1
224
- h[:a, :b] #=&gt; [1,2]
225
- </pre>
226
- </div>
227
- <div class="sourcecode">
228
- <p class="source-link">[ <a href="javascript:toggleSource('M000084_source')" id="l_M000084_source">show source</a> ]</p>
229
- <div id="M000084_source" class="dyn-source">
230
- <pre>
231
- <span class="ruby-comment cmt"># File lib/facets/core/hash/op_fetch.rb, line 13</span>
232
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">sliceKeys</span> )
233
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">sliceKeys</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
234
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">at</span>( <span class="ruby-identifier">sliceKeys</span>[<span class="ruby-value">0</span>] )
235
- <span class="ruby-keyword kw">else</span>
236
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">values_at</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">sliceKeys</span> )
237
- <span class="ruby-keyword kw">end</span>
238
- <span class="ruby-keyword kw">end</span>
239
- </pre>
240
- </div>
241
- </div>
242
- </div>
243
- <div class="method">
244
- <div class="title">
245
- <a name="M000085"></a><b>[]=</b>( *args )
246
- </div>
247
- <div class="description">
248
- <p>
249
- Add slicing to element assignment operator.
250
- </p>
251
- <pre>
252
- h = {:a=&gt;1, :b=&gt;2, :c=&gt;3}
253
-
254
- h[:a] = 9 #=&gt; 9
255
- h #=&gt; {:a=&gt;9, :b=&gt;2, :c=&gt;3}
256
-
257
- h[:a, :c] = [10,11] #=&gt; [10,11]
258
- h #=&gt; {:a=&gt;10, :b=&gt;2, :c=&gt;11}
259
- </pre>
260
- </div>
261
- <div class="sourcecode">
262
- <p class="source-link">[ <a href="javascript:toggleSource('M000085_source')" id="l_M000085_source">show source</a> ]</p>
263
- <div id="M000085_source" class="dyn-source">
264
- <pre>
265
- <span class="ruby-comment cmt"># File lib/facets/core/hash/op_fetch.rb, line 31</span>
266
- <span class="ruby-keyword kw">def</span> <span class="ruby-operator">[]=</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">args</span> )
267
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value">2</span>
268
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">store</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">args</span> )
269
- <span class="ruby-keyword kw">end</span>
270
- <span class="ruby-identifier">aVals</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">pop</span>
271
- <span class="ruby-identifier">aVals</span> = [<span class="ruby-identifier">aVals</span>] <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">aVals</span>.<span class="ruby-identifier">kind_of?</span>( <span class="ruby-constant">Array</span> )
272
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each_index</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">store</span>( <span class="ruby-identifier">args</span>[<span class="ruby-identifier">i</span>], <span class="ruby-identifier">aVals</span>[<span class="ruby-identifier">i</span>] ) }
273
- <span class="ruby-keyword kw">end</span>
274
- </pre>
275
- </div>
276
- </div>
277
- </div>
278
- <div class="method">
279
- <div class="title">
280
- <a name="M000083"></a><b>alias!</b>( newkey, oldkey )
281
- </div>
282
- <div class="description">
283
- <p>
284
- Modifies the receiving <a href="Hash.html">Hash</a> so that the value
285
- previously referred to by <em>oldkey</em> is also referenced by
286
- <em>newkey</em>; <em>oldkey</em> is retained in the <a
287
- href="Hash.html">Hash</a>. If <em>oldkey</em> does not exist as a key in
288
- the <a href="Hash.html">Hash</a>, no change is effected.
289
- </p>
290
- <p>
291
- Returns a reference to the <a href="Hash.html">Hash</a>.
292
- </p>
293
- <pre>
294
- foo = { :name=&gt;'Gavin', 'wife'=&gt;:Lisa }
295
- foo.alias!('name',:name) =&gt; { :name=&gt;'Gavin', 'name'=&gt;'Gavin', 'wife'=&gt;:Lisa }
296
-
297
- foo = { :name=&gt;'Gavin', 'wife'=&gt;:Lisa }
298
- foo.alias!('spouse','wife') =&gt; { :name=&gt;'Gavin', 'wife'=&gt;:Lisa, 'spouse'=&gt;:Lisa }
299
-
300
- foo = { :name=&gt;'Gavin', 'wife'=&gt;:Lisa }
301
- foo.alias!('bar','foo') =&gt; { :name=&gt;'Gavin', 'wife'=&gt;:Lisa }
302
- </pre>
303
- <p>
304
- Note that if the <em>oldkey</em> is reassigned, the reference will no
305
- longer exist, and the <em>newkey</em> will remain as it was.
306
- </p>
307
- </div>
308
- <div class="sourcecode">
309
- <p class="source-link">[ <a href="javascript:toggleSource('M000083_source')" id="l_M000083_source">show source</a> ]</p>
310
- <div id="M000083_source" class="dyn-source">
311
- <pre>
312
- <span class="ruby-comment cmt"># File lib/facets/core/hash/alias.rb, line 23</span>
313
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">alias!</span>( <span class="ruby-identifier">newkey</span>, <span class="ruby-identifier">oldkey</span> )
314
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">newkey</span>] = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">oldkey</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">oldkey</span>)
315
- <span class="ruby-keyword kw">self</span>
316
- <span class="ruby-keyword kw">end</span>
317
- </pre>
318
- </div>
319
- </div>
320
- </div>
321
- <div class="method">
322
- <div class="title">
323
- <a name="M000050"></a><b>assert_has_keys</b>(*check_keys)
324
- </div>
325
- <div class="description">
326
- <p>
327
- Returns true is hash has the given keys, otherwise throws an ArgumentError.
328
- </p>
329
- <pre>
330
- h = { :a =&gt; 1, :b =&gt; 2 }
331
- h.assert_has_keys( :a ) #=&gt; true
332
- h.assert_has_keys( :c ) #=&gt; ArgumentError
333
- </pre>
334
- </div>
335
- <div class="sourcecode">
336
- <p class="source-link">[ <a href="javascript:toggleSource('M000050_source')" id="l_M000050_source">show source</a> ]</p>
337
- <div id="M000050_source" class="dyn-source">
338
- <pre>
339
- <span class="ruby-comment cmt"># File lib/facets/core/hash/assert_has_keys.rb, line 12</span>
340
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">assert_has_keys</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">check_keys</span>)
341
- <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;does not have key(s)&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">has_keys?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">check_keys</span>)
342
- <span class="ruby-keyword kw">end</span>
343
- </pre>
344
- </div>
345
- </div>
346
- </div>
347
- <div class="method">
348
- <div class="title">
349
- <a name="M000064"></a><b>assert_has_only_keys</b>(*check_keys)
350
- </div>
351
- <div class="description">
352
- <p>
353
- Returns true is hash has only then given keys, otherwise throws an
354
- ArgumentError.
355
- </p>
356
- <pre>
357
- h = { :a =&gt; 1, :b =&gt; 2 }
358
- h.assert_has_only_keys( :a, :b ) #=&gt; true
359
- h.assert_has_only_keys( :a ) #=&gt; ArgumentError
360
- </pre>
361
- </div>
362
- <div class="sourcecode">
363
- <p class="source-link">[ <a href="javascript:toggleSource('M000064_source')" id="l_M000064_source">show source</a> ]</p>
364
- <div id="M000064_source" class="dyn-source">
365
- <pre>
366
- <span class="ruby-comment cmt"># File lib/facets/core/hash/assert_has_only_keys.rb, line 12</span>
367
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">assert_has_only_keys</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">check_keys</span>)
368
- <span class="ruby-identifier">raise</span>(<span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;has unexpected key(s)&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">has_only_keys?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">check_keys</span>)
369
- <span class="ruby-keyword kw">end</span>
370
- </pre>
371
- </div>
372
- </div>
373
- </div>
374
- <div class="method">
375
- <div class="title">
376
- <a name="M000062"></a><b>at_rand</b>()
377
- </div>
378
- <div class="description">
379
- <p>
380
- Alias for <a href="Hash.html#M000059">rand_value</a>
381
- </p>
382
- </div>
383
- </div>
384
- <div class="method">
385
- <div class="title">
386
- <a name="M000063"></a><b>at_rand!</b>()
387
- </div>
388
- <div class="description">
389
- <p>
390
- Alias for <a href="Hash.html#M000060">rand_value!</a>
391
- </p>
392
- </div>
393
- </div>
394
- <div class="method">
395
- <div class="title">
396
- <a name="M000048"></a><b>collate</b>( {|| ...}
397
- </div>
398
- <div class="description">
399
- <p>
400
- Returns a new hash built by iterating through each key,value pair and
401
- updating the new hash.
402
- </p>
403
- </div>
404
- <div class="sourcecode">
405
- <p class="source-link">[ <a href="javascript:toggleSource('M000048_source')" id="l_M000048_source">show source</a> ]</p>
406
- <div id="M000048_source" class="dyn-source">
407
- <pre>
408
- <span class="ruby-comment cmt"># File lib/facets/core/hash/collate.rb, line 12</span>
409
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">collate</span> <span class="ruby-comment cmt"># :yield:</span>
410
- <span class="ruby-identifier">newhash</span> = {}
411
- <span class="ruby-identifier">each_pair</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">newhash</span>.<span class="ruby-identifier">update</span>( <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>) ) }
412
- <span class="ruby-identifier">newhash</span>
413
- <span class="ruby-keyword kw">end</span>
414
- </pre>
415
- </div>
416
- </div>
417
- </div>
418
- <div class="method">
419
- <div class="title">
420
- <a name="M000049"></a><b>collate!</b>(&amp;yld)
421
- </div>
422
- <div class="description">
423
- <p>
424
- In place version of <a href="Hash.html#M000048">collate</a>.
425
- </p>
426
- </div>
427
- <div class="sourcecode">
428
- <p class="source-link">[ <a href="javascript:toggleSource('M000049_source')" id="l_M000049_source">show source</a> ]</p>
429
- <div id="M000049_source" class="dyn-source">
430
- <pre>
431
- <span class="ruby-comment cmt"># File lib/facets/core/hash/collate.rb, line 19</span>
432
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">collate!</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">yld</span>)
433
- <span class="ruby-identifier">replace</span>( <span class="ruby-identifier">collate</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">yld</span>) )
434
- <span class="ruby-keyword kw">end</span>
435
- </pre>
436
- </div>
437
- </div>
438
- </div>
439
- <div class="method">
440
- <div class="title">
441
- <a name="M000069"></a><b>delete_unless</b>(&amp;block)
442
- </div>
443
- <div class="sourcecode">
444
- <p class="source-link">[ <a href="javascript:toggleSource('M000069_source')" id="l_M000069_source">show source</a> ]</p>
445
- <div id="M000069_source" class="dyn-source">
446
- <pre>
447
- <span class="ruby-comment cmt"># File lib/facets/core/hash/delete_unless.rb, line 3</span>
448
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete_unless</span> (<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
449
- <span class="ruby-identifier">delete_if</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span>) }
450
- <span class="ruby-keyword kw">end</span>
451
- </pre>
452
- </div>
453
- </div>
454
- </div>
455
- <div class="method">
456
- <div class="title">
457
- <a name="M000053"></a><b>each</b>() {|v| ...}
458
- </div>
459
- <div class="description">
460
- <p>
461
- A &quot;smarter&quot; hash<a href="Hash.html#M000053">each</a> which
462
- iterates through each <em>value</em> if only one block parameter is given.
463
- </p>
464
- <pre>
465
- {:a=&gt;&quot;a&quot;, 2=&gt;&quot;b&quot;, &quot;x&quot;=&gt;&quot;c&quot;}.each{ |v| puts v }
466
- </pre>
467
- <p>
468
- <em>produces</em>
469
- </p>
470
- <pre>
471
- a
472
- b
473
- c
474
- </pre>
475
- <p>
476
- WARNING! Use with caution. Methods from other libraries may depend on the
477
- old behavior, expecting a two element array to be passed into a single
478
- block argument.
479
- </p>
480
- </div>
481
- <div class="sourcecode">
482
- <p class="source-link">[ <a href="javascript:toggleSource('M000053_source')" id="l_M000053_source">show source</a> ]</p>
483
- <div id="M000053_source" class="dyn-source">
484
- <pre>
485
- <span class="ruby-comment cmt"># File lib/facets/core/hash/each.rb, line 19</span>
486
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">each</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">yld</span>)
487
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">yld</span>.<span class="ruby-identifier">arity</span>
488
- <span class="ruby-keyword kw">when</span> <span class="ruby-value">0</span>
489
- <span class="ruby-keyword kw">when</span> <span class="ruby-value">1</span>
490
- <span class="ruby-identifier">each_value</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">v</span>)}
491
- <span class="ruby-keyword kw">else</span>
492
- <span class="ruby-identifier">each_pair</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">yld</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>)}
493
- <span class="ruby-keyword kw">end</span>
494
- <span class="ruby-keyword kw">self</span>
495
- <span class="ruby-keyword kw">end</span>
496
- </pre>
497
- </div>
498
- </div>
499
- </div>
500
- <div class="method">
501
- <div class="title">
502
- <a name="M000054"></a><b>each_with_index</b>( &amp;yld )
503
- </div>
504
- <div class="description">
505
- <p>
506
- Alias for <a href="Hash.html#M000051">each_with_key</a>
507
- </p>
508
- </div>
509
- </div>
510
- <div class="method">
511
- <div class="title">
512
- <a name="M000051"></a><b>each_with_key</b>( &amp;yld )
513
- </div>
514
- <div class="aka">
515
- This method is also aliased as
516
- <a href="Hash.html#M000054">each_with_index</a>
517
- </div>
518
- <div class="sourcecode">
519
- <p class="source-link">[ <a href="javascript:toggleSource('M000051_source')" id="l_M000051_source">show source</a> ]</p>
520
- <div id="M000051_source" class="dyn-source">
521
- <pre>
522
- <span class="ruby-comment cmt"># File lib/facets/core/hash/each_with_key.rb, line 4</span>
523
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">each_with_key</span>( <span class="ruby-operator">&amp;</span><span class="ruby-identifier">yld</span> )
524
- <span class="ruby-identifier">each_pair</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">yld</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">v</span>,<span class="ruby-identifier">k</span>) }
525
- <span class="ruby-keyword kw">end</span>
526
- </pre>
527
- </div>
528
- </div>
529
- </div>
530
- <div class="method">
531
- <div class="title">
532
- <a name="M000055"></a><b>graph!</b>( &amp;blk )
533
- </div>
534
- <div class="description">
535
- <p>
536
- As with <a href="Enumerable.html#M000469">Enumerable#graph</a> but acts in
537
- place.
538
- </p>
539
- </div>
540
- <div class="sourcecode">
541
- <p class="source-link">[ <a href="javascript:toggleSource('M000055_source')" id="l_M000055_source">show source</a> ]</p>
542
- <div id="M000055_source" class="dyn-source">
543
- <pre>
544
- <span class="ruby-comment cmt"># File lib/facets/core/hash/graph.rb, line 5</span>
545
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">graph!</span>( <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> )
546
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">replace</span>( <span class="ruby-identifier">graph</span>( <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> ) )
547
- <span class="ruby-keyword kw">end</span>
548
- </pre>
549
- </div>
550
- </div>
551
- </div>
552
- <div class="method">
553
- <div class="title">
554
- <a name="M000086"></a><b>has_keys?</b>(*check_keys)
555
- </div>
556
- <div class="description">
557
- <p>
558
- Returns true or false whether the hash contains the given keys.
559
- </p>
560
- <pre>
561
- h = { :a =&gt; 1, :b =&gt; 2 }
562
- h.has_keys?( :a ) #=&gt; true
563
- h.has_keys?( :c ) #=&gt; false
564
- </pre>
565
- </div>
566
- <div class="sourcecode">
567
- <p class="source-link">[ <a href="javascript:toggleSource('M000086_source')" id="l_M000086_source">show source</a> ]</p>
568
- <div id="M000086_source" class="dyn-source">
569
- <pre>
570
- <span class="ruby-comment cmt"># File lib/facets/core/hash/has_keys.rb, line 10</span>
571
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">has_keys?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">check_keys</span>)
572
- <span class="ruby-identifier">unknown_keys</span> = <span class="ruby-identifier">check_keys</span> <span class="ruby-operator">-</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">keys</span>
573
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">unknown_keys</span>.<span class="ruby-identifier">empty?</span>
574
- <span class="ruby-keyword kw">end</span>
575
- </pre>
576
- </div>
577
- </div>
578
- </div>
579
- <div class="method">
580
- <div class="title">
581
- <a name="M000070"></a><b>has_only_keys?</b>(*check_keys)
582
- </div>
583
- <div class="description">
584
- <p>
585
- Returns true if the hash contains <em>only</em> the given keys, otherwise
586
- false.
587
- </p>
588
- <pre>
589
- h = { :a =&gt; 1, :b =&gt; 2 }
590
- h.has_only_keys?( :a, :b ) #=&gt; true
591
- h.has_only_keys?( :a ) #=&gt; false
592
- </pre>
593
- </div>
594
- <div class="sourcecode">
595
- <p class="source-link">[ <a href="javascript:toggleSource('M000070_source')" id="l_M000070_source">show source</a> ]</p>
596
- <div id="M000070_source" class="dyn-source">
597
- <pre>
598
- <span class="ruby-comment cmt"># File lib/facets/core/hash/has_only_keys.rb, line 10</span>
599
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">has_only_keys?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">check_keys</span>)
600
- <span class="ruby-identifier">unknown_keys</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">keys</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">check_keys</span>
601
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">unknown_keys</span>.<span class="ruby-identifier">empty?</span>
602
- <span class="ruby-keyword kw">end</span>
603
- </pre>
604
- </div>
605
- </div>
606
- </div>
607
- <div class="method">
608
- <div class="title">
609
- <a name="M000058"></a><b>inverse</b>()
610
- </div>
611
- <div class="description">
612
- <p>
613
- Create a &quot;true&quot; inverse hash by storing mutliple values in
614
- Arrays.
615
- </p>
616
- <pre>
617
- h = {&quot;a&quot;=&gt;3, &quot;b&quot;=&gt;3, &quot;c&quot;=&gt;3, &quot;d&quot;=&gt;2, &quot;e&quot;=&gt;9, &quot;f&quot;=&gt;3, &quot;g&quot;=&gt;9}
618
-
619
- h.invert #=&gt; {2=&gt;&quot;d&quot;, 3=&gt;&quot;f&quot;, 9=&gt;&quot;g&quot;}
620
- h.inverse #=&gt; {2=&gt;&quot;d&quot;, 3=&gt;[&quot;f&quot;, &quot;c&quot;, &quot;b&quot;, &quot;a&quot;], 9=&gt;[&quot;g&quot;, &quot;e&quot;]}
621
- h.inverse.inverse #=&gt; {&quot;a&quot;=&gt;3, &quot;b&quot;=&gt;3, &quot;c&quot;=&gt;3, &quot;d&quot;=&gt;2, &quot;e&quot;=&gt;9, &quot;f&quot;=&gt;3, &quot;g&quot;=&gt;9}
622
- h.inverse.inverse == h #=&gt; true
623
- </pre>
624
- </div>
625
- <div class="sourcecode">
626
- <p class="source-link">[ <a href="javascript:toggleSource('M000058_source')" id="l_M000058_source">show source</a> ]</p>
627
- <div id="M000058_source" class="dyn-source">
628
- <pre>
629
- <span class="ruby-comment cmt"># File lib/facets/core/hash/inverse.rb, line 16</span>
630
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inverse</span>
631
- <span class="ruby-identifier">i</span> = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
632
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_pair</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
633
- <span class="ruby-keyword kw">if</span> (<span class="ruby-constant">Array</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">v</span>)
634
- <span class="ruby-identifier">v</span>.<span class="ruby-identifier">each</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> <span class="ruby-identifier">i</span>[<span class="ruby-identifier">x</span>] = ( <span class="ruby-identifier">i</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">x</span>) <span class="ruby-operator">?</span> [<span class="ruby-identifier">k</span>,<span class="ruby-identifier">i</span>[<span class="ruby-identifier">x</span>]].<span class="ruby-identifier">flatten</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">k</span> ) }
635
- <span class="ruby-keyword kw">else</span>
636
- <span class="ruby-identifier">i</span>[<span class="ruby-identifier">v</span>] = ( <span class="ruby-identifier">i</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">v</span>) <span class="ruby-operator">?</span> [<span class="ruby-identifier">k</span>,<span class="ruby-identifier">i</span>[<span class="ruby-identifier">v</span>]].<span class="ruby-identifier">flatten</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">k</span> )
637
- <span class="ruby-keyword kw">end</span>
638
- }
639
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">i</span>
640
- <span class="ruby-keyword kw">end</span>
641
- </pre>
642
- </div>
643
- </div>
644
- </div>
645
- <div class="method">
646
- <div class="title">
647
- <a name="M000052"></a><b>join</b>( pair_divider='', elem_divider='' )
648
- </div>
649
- <div class="sourcecode">
650
- <p class="source-link">[ <a href="javascript:toggleSource('M000052_source')" id="l_M000052_source">show source</a> ]</p>
651
- <div id="M000052_source" class="dyn-source">
652
- <pre>
653
- <span class="ruby-comment cmt"># File lib/facets/core/hash/join.rb, line 4</span>
654
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">join</span>( <span class="ruby-identifier">pair_divider</span>=<span class="ruby-value str">''</span>, <span class="ruby-identifier">elem_divider</span>=<span class="ruby-value str">''</span> )
655
- <span class="ruby-identifier">s</span> = []
656
- <span class="ruby-identifier">each_pair</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{k}#{pair_divider}#{v}&quot;</span> }
657
- <span class="ruby-identifier">s</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">elem_divider</span>)
658
- <span class="ruby-keyword kw">end</span>
659
- </pre>
660
- </div>
661
- </div>
662
- </div>
663
- <div class="method">
664
- <div class="title">
665
- <a name="M000089"></a><b>keys_to_s</b>( from_class=nil )
666
- </div>
667
- <div class="description">
668
- <p>
669
- Converts all keys in the <a href="Hash.html">Hash</a> to be <a
670
- href="String.html">String</a> values, returning a new <a
671
- href="Hash.html">Hash</a>. With a from_class parameter, limits conversion
672
- to only a certain class of keys. It defaults to nil which convert any key
673
- class.
674
- </p>
675
- <pre>
676
- foo = { :name=&gt;'Gavin', :wife=&gt;:Lisa }
677
- foo.keys_to_s #=&gt; { &quot;name&quot;=&gt;&quot;Gavin&quot;, &quot;wife&quot;=&gt;:Lisa }
678
- foo.inspect #=&gt; { :name =&gt;&quot;Gavin&quot;, :wife=&gt;:Lisa }
679
- </pre>
680
- </div>
681
- <div class="aka">
682
- This method is also aliased as
683
- <a href="Hash.html#M000090">stringify_keys</a>
684
- </div>
685
- <div class="sourcecode">
686
- <p class="source-link">[ <a href="javascript:toggleSource('M000089_source')" id="l_M000089_source">show source</a> ]</p>
687
- <div id="M000089_source" class="dyn-source">
688
- <pre>
689
- <span class="ruby-comment cmt"># File lib/facets/core/hash/keys_to_s.rb, line 15</span>
690
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keys_to_s</span>( <span class="ruby-identifier">from_class</span>=<span class="ruby-keyword kw">nil</span> )
691
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Parameter must be a class&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">from_class</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_class</span>
692
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>.<span class="ruby-identifier">keys_to_s!</span>( <span class="ruby-identifier">from_class</span> )
693
- <span class="ruby-keyword kw">end</span>
694
- </pre>
695
- </div>
696
- </div>
697
- </div>
698
- <div class="method">
699
- <div class="title">
700
- <a name="M000091"></a><b>keys_to_s!</b>( from_class=nil )
701
- </div>
702
- <div class="description">
703
- <p>
704
- Synonym for Hash#keys_to_string, but modifies the receiver in place (and
705
- returns it). With a from_class parameter, limits conversion to only a
706
- certain class of keys. It defaults to nil which convert any key class.
707
- </p>
708
- <pre>
709
- foo = { :name=&gt;'Gavin', :wife=&gt;:Lisa }
710
- foo.keys_to_s! #=&gt; { &quot;name&quot;=&gt;&quot;Gavin&quot;, &quot;wife&quot;=&gt;:Lisa }
711
- foo.inspect #=&gt; { &quot;name&quot;=&gt;&quot;Gavin&quot;, &quot;wife&quot;=&gt;:Lisa }
712
- </pre>
713
- </div>
714
- <div class="aka">
715
- This method is also aliased as
716
- <a href="Hash.html#M000092">stringify_keys!</a>
717
- </div>
718
- <div class="sourcecode">
719
- <p class="source-link">[ <a href="javascript:toggleSource('M000091_source')" id="l_M000091_source">show source</a> ]</p>
720
- <div id="M000091_source" class="dyn-source">
721
- <pre>
722
- <span class="ruby-comment cmt"># File lib/facets/core/hash/keys_to_s.rb, line 34</span>
723
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keys_to_s!</span>( <span class="ruby-identifier">from_class</span>=<span class="ruby-keyword kw">nil</span> )
724
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Parameter must be a class&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">from_class</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_class</span>
725
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_class</span>
726
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_key</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
727
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_s</span>]=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:to_s</span>) <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">class</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">from_class</span>
728
- }
729
- <span class="ruby-keyword kw">else</span>
730
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_key</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
731
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_s</span>]=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:to_s</span>)
732
- }
733
- <span class="ruby-keyword kw">end</span>
734
- <span class="ruby-keyword kw">self</span>
735
- <span class="ruby-keyword kw">end</span>
736
- </pre>
737
- </div>
738
- </div>
739
- </div>
740
- <div class="method">
741
- <div class="title">
742
- <a name="M000065"></a><b>keys_to_sym</b>( from_class=String )
743
- </div>
744
- <div class="description">
745
- <p>
746
- Converts all keys in the <a href="Hash.html">Hash</a> to be <a
747
- href="Symbol.html">Symbol</a> values, returning a new <a
748
- href="Hash.html">Hash</a>. With a from_class parameter, limits conversion
749
- to only a certain class of keys. It defaults to <a
750
- href="String.html">String</a> &#8212;use nil to convert any key class.
751
- </p>
752
- <pre>
753
- foo = { :name=&gt;'Gavin', 'wife'=&gt;:Lisa }
754
- foo.keys_to_sym #=&gt; { :name=&gt;&quot;Gavin&quot;, :wife=&gt;:Lisa }
755
- foo.inspect #=&gt; { &quot;name&quot; =&gt;&quot;Gavin&quot;, &quot;wife&quot;=&gt;:Lisa }
756
- </pre>
757
- </div>
758
- <div class="aka">
759
- This method is also aliased as
760
- <a href="Hash.html#M000066">symbolize_keys</a>
761
- </div>
762
- <div class="sourcecode">
763
- <p class="source-link">[ <a href="javascript:toggleSource('M000065_source')" id="l_M000065_source">show source</a> ]</p>
764
- <div id="M000065_source" class="dyn-source">
765
- <pre>
766
- <span class="ruby-comment cmt"># File lib/facets/core/hash/keys_to_sym.rb, line 15</span>
767
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keys_to_sym</span>( <span class="ruby-identifier">from_class</span>=<span class="ruby-constant">String</span> )
768
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Parameter must be a class&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">from_class</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_class</span>
769
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>.<span class="ruby-identifier">keys_to_sym!</span>( <span class="ruby-identifier">from_class</span> )
770
- <span class="ruby-keyword kw">end</span>
771
- </pre>
772
- </div>
773
- </div>
774
- </div>
775
- <div class="method">
776
- <div class="title">
777
- <a name="M000067"></a><b>keys_to_sym!</b>( from_class=String )
778
- </div>
779
- <div class="description">
780
- <p>
781
- Synonym for Hash#keys_to_symbol, but modifies the receiver in place (and
782
- returns it). With a from_class parameter, limits conversion to only a
783
- certain class of keys. It defaults to <a href="String.html">String</a>
784
- &#8212;use nil to convert any key class.
785
- </p>
786
- <pre>
787
- foo = { 'name'=&gt;'Gavin', 'wife'=&gt;:Lisa }
788
- foo.keys_to_sym! #=&gt; { :name=&gt;&quot;Gavin&quot;, :wife=&gt;:Lisa }
789
- foo.inspect #=&gt; { :name=&gt;&quot;Gavin&quot;, :wife=&gt;:Lisa }
790
- </pre>
791
- </div>
792
- <div class="aka">
793
- This method is also aliased as
794
- <a href="Hash.html#M000068">symbolize_keys!</a>
795
- </div>
796
- <div class="sourcecode">
797
- <p class="source-link">[ <a href="javascript:toggleSource('M000067_source')" id="l_M000067_source">show source</a> ]</p>
798
- <div id="M000067_source" class="dyn-source">
799
- <pre>
800
- <span class="ruby-comment cmt"># File lib/facets/core/hash/keys_to_sym.rb, line 40</span>
801
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keys_to_sym!</span>( <span class="ruby-identifier">from_class</span>=<span class="ruby-constant">String</span> )
802
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Parameter must be a class&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">from_class</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_class</span>
803
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_class</span>
804
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_key</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
805
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_sym</span>]=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:to_sym</span>) <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">class</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">from_class</span>
806
- }
807
- <span class="ruby-keyword kw">else</span>
808
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_key</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
809
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_sym</span>]=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:to_sym</span>)
810
- }
811
- <span class="ruby-keyword kw">end</span>
812
- <span class="ruby-keyword kw">self</span>
813
- <span class="ruby-keyword kw">end</span>
814
- </pre>
815
- </div>
816
- </div>
817
- </div>
818
- <div class="method">
819
- <div class="title">
820
- <a name="M000061"></a><b>pick</b>()
821
- </div>
822
- <div class="description">
823
- <p>
824
- Alias for <a href="Hash.html#M000060">rand_value!</a>
825
- </p>
826
- </div>
827
- </div>
828
- <div class="method">
829
- <div class="title">
830
- <a name="M000075"></a><b>pick_key</b>()
831
- </div>
832
- <div class="description">
833
- <p>
834
- Alias for <a href="Hash.html#M000074">rand_key!</a>
835
- </p>
836
- </div>
837
- </div>
838
- <div class="method">
839
- <div class="title">
840
- <a name="M000097"></a><b>pick_pair</b>()
841
- </div>
842
- <div class="description">
843
- <p>
844
- Alias for <a href="Hash.html#M000096">rand_pair!</a>
845
- </p>
846
- </div>
847
- </div>
848
- <div class="method">
849
- <div class="title">
850
- <a name="M000073"></a><b>rand_key</b>()
851
- </div>
852
- <div class="description">
853
- <p>
854
- Returns a random key.
855
- </p>
856
- <pre>
857
- {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}.pick_key #=&gt; :three
858
- </pre>
859
- </div>
860
- <div class="sourcecode">
861
- <p class="source-link">[ <a href="javascript:toggleSource('M000073_source')" id="l_M000073_source">show source</a> ]</p>
862
- <div id="M000073_source" class="dyn-source">
863
- <pre>
864
- <span class="ruby-comment cmt"># File lib/facets/core/hash/rand_key.rb, line 7</span>
865
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rand_key</span>
866
- <span class="ruby-identifier">keys</span>.<span class="ruby-identifier">at</span>( <span class="ruby-identifier">rand</span>(<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span>) )
867
- <span class="ruby-keyword kw">end</span>
868
- </pre>
869
- </div>
870
- </div>
871
- </div>
872
- <div class="method">
873
- <div class="title">
874
- <a name="M000074"></a><b>rand_key!</b>()
875
- </div>
876
- <div class="description">
877
- <p>
878
- Delete a random key-value pair, returning the key.
879
- </p>
880
- <pre>
881
- a = {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}
882
- a.pick_key! #=&gt; :two
883
- a #=&gt; {:one =&gt; 1, :three =&gt; 3}
884
- </pre>
885
- </div>
886
- <div class="aka">
887
- This method is also aliased as
888
- <a href="Hash.html#M000075">pick_key</a>
889
- </div>
890
- <div class="sourcecode">
891
- <p class="source-link">[ <a href="javascript:toggleSource('M000074_source')" id="l_M000074_source">show source</a> ]</p>
892
- <div id="M000074_source" class="dyn-source">
893
- <pre>
894
- <span class="ruby-comment cmt"># File lib/facets/core/hash/rand_key.rb, line 17</span>
895
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rand_key!</span>
896
- <span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span> = <span class="ruby-identifier">rand_pair</span>
897
- <span class="ruby-identifier">delete</span>( <span class="ruby-identifier">k</span> )
898
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">k</span>
899
- <span class="ruby-keyword kw">end</span>
900
- </pre>
901
- </div>
902
- </div>
903
- </div>
904
- <div class="method">
905
- <div class="title">
906
- <a name="M000095"></a><b>rand_pair</b>()
907
- </div>
908
- <div class="description">
909
- <p>
910
- Returns a random key-value pair.
911
- </p>
912
- <pre>
913
- {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}.pick #=&gt; [:one, 1]
914
- </pre>
915
- </div>
916
- <div class="sourcecode">
917
- <p class="source-link">[ <a href="javascript:toggleSource('M000095_source')" id="l_M000095_source">show source</a> ]</p>
918
- <div id="M000095_source" class="dyn-source">
919
- <pre>
920
- <span class="ruby-comment cmt"># File lib/facets/core/hash/rand_pair.rb, line 9</span>
921
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rand_pair</span>
922
- <span class="ruby-identifier">k</span> = <span class="ruby-identifier">rand_key</span>
923
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">k</span>, <span class="ruby-identifier">fetch</span>(<span class="ruby-identifier">k</span>)
924
- <span class="ruby-keyword kw">end</span>
925
- </pre>
926
- </div>
927
- </div>
928
- </div>
929
- <div class="method">
930
- <div class="title">
931
- <a name="M000096"></a><b>rand_pair!</b>()
932
- </div>
933
- <div class="description">
934
- <p>
935
- Deletes a random key-value pair and returns that pair.
936
- </p>
937
- <pre>
938
- a = {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}
939
- a.rand_pair! #=&gt; [:two, 2]
940
- a #=&gt; {:one =&gt; 1, :three =&gt; 3}
941
- </pre>
942
- </div>
943
- <div class="aka">
944
- This method is also aliased as
945
- <a href="Hash.html#M000097">pick_pair</a>
946
- </div>
947
- <div class="sourcecode">
948
- <p class="source-link">[ <a href="javascript:toggleSource('M000096_source')" id="l_M000096_source">show source</a> ]</p>
949
- <div id="M000096_source" class="dyn-source">
950
- <pre>
951
- <span class="ruby-comment cmt"># File lib/facets/core/hash/rand_pair.rb, line 20</span>
952
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rand_pair!</span>
953
- <span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span> = <span class="ruby-identifier">rand_pair</span>
954
- <span class="ruby-identifier">delete</span>( <span class="ruby-identifier">k</span> )
955
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>
956
- <span class="ruby-keyword kw">end</span>
957
- </pre>
958
- </div>
959
- </div>
960
- </div>
961
- <div class="method">
962
- <div class="title">
963
- <a name="M000059"></a><b>rand_value</b>()
964
- </div>
965
- <div class="description">
966
- <p>
967
- Returns a random hash value.
968
- </p>
969
- <pre>
970
- {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}.rand_value #=&gt; 2
971
- {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}.rand_value #=&gt; 1
972
- </pre>
973
- </div>
974
- <div class="aka">
975
- This method is also aliased as
976
- <a href="Hash.html#M000062">at_rand</a>
977
- </div>
978
- <div class="sourcecode">
979
- <p class="source-link">[ <a href="javascript:toggleSource('M000059_source')" id="l_M000059_source">show source</a> ]</p>
980
- <div id="M000059_source" class="dyn-source">
981
- <pre>
982
- <span class="ruby-comment cmt"># File lib/facets/core/hash/rand_value.rb, line 16</span>
983
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rand_value</span>
984
- <span class="ruby-identifier">fetch</span>( <span class="ruby-identifier">rand_key</span> )
985
- <span class="ruby-keyword kw">end</span>
986
- </pre>
987
- </div>
988
- </div>
989
- </div>
990
- <div class="method">
991
- <div class="title">
992
- <a name="M000060"></a><b>rand_value!</b>()
993
- </div>
994
- <div class="description">
995
- <p>
996
- Deletes a random key-value pair and returns the value.
997
- </p>
998
- <pre>
999
- a = {:one =&gt; 1, :two =&gt; 2, :three =&gt; 3}
1000
- a.at_rand! #=&gt; 2
1001
- a #=&gt; {:one =&gt; 1, :three =&gt; 3}
1002
- </pre>
1003
- </div>
1004
- <div class="aka">
1005
- This method is also aliased as
1006
- <a href="Hash.html#M000061">pick</a>
1007
- <a href="Hash.html#M000063">at_rand!</a>
1008
- </div>
1009
- <div class="sourcecode">
1010
- <p class="source-link">[ <a href="javascript:toggleSource('M000060_source')" id="l_M000060_source">show source</a> ]</p>
1011
- <div id="M000060_source" class="dyn-source">
1012
- <pre>
1013
- <span class="ruby-comment cmt"># File lib/facets/core/hash/rand_value.rb, line 26</span>
1014
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rand_value!</span>
1015
- <span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span> = <span class="ruby-identifier">rand_pair</span>
1016
- <span class="ruby-identifier">delete</span>( <span class="ruby-identifier">k</span> )
1017
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">v</span>
1018
- <span class="ruby-keyword kw">end</span>
1019
- </pre>
1020
- </div>
1021
- </div>
1022
- </div>
1023
- <div class="method">
1024
- <div class="title">
1025
- <a name="M000071"></a><b>replace_each</b>( {|| ...}
1026
- </div>
1027
- <div class="description">
1028
- <p>
1029
- Same as <a href="Hash.html#M000098">update_each</a>, but deletes the key
1030
- element first.
1031
- </p>
1032
- </div>
1033
- <div class="sourcecode">
1034
- <p class="source-link">[ <a href="javascript:toggleSource('M000071_source')" id="l_M000071_source">show source</a> ]</p>
1035
- <div id="M000071_source" class="dyn-source">
1036
- <pre>
1037
- <span class="ruby-comment cmt"># File lib/facets/core/hash/replace_each.rb, line 4</span>
1038
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">replace_each</span> <span class="ruby-comment cmt"># :yield:</span>
1039
- <span class="ruby-identifier">dup</span>.<span class="ruby-identifier">each_pair</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">delete</span>( <span class="ruby-identifier">k</span> ); <span class="ruby-identifier">update</span>( <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>) ); }
1040
- <span class="ruby-keyword kw">self</span>
1041
- <span class="ruby-keyword kw">end</span>
1042
- </pre>
1043
- </div>
1044
- </div>
1045
- </div>
1046
- <div class="method">
1047
- <div class="title">
1048
- <a name="M000081"></a><b>shuffle</b>()
1049
- </div>
1050
- <div class="description">
1051
- <p>
1052
- Returns a copy of the hash with <em>values</em> arranged in new random
1053
- order.
1054
- </p>
1055
- <pre>
1056
- h = {:a=&gt;1, :b=&gt;2, :c=&gt;3}
1057
- h.shuffle_hash #=&gt; {:b=&gt;2, :c=&gt;1, :a&gt;3}
1058
- </pre>
1059
- </div>
1060
- <div class="sourcecode">
1061
- <p class="source-link">[ <a href="javascript:toggleSource('M000081_source')" id="l_M000081_source">show source</a> ]</p>
1062
- <div id="M000081_source" class="dyn-source">
1063
- <pre>
1064
- <span class="ruby-comment cmt"># File lib/facets/core/hash/shuffle.rb, line 11</span>
1065
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shuffle</span>
1066
- <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">zipnew</span>( <span class="ruby-identifier">keys</span>.<span class="ruby-identifier">sort_by</span>{<span class="ruby-constant">Kernel</span>.<span class="ruby-identifier">rand</span>}, <span class="ruby-identifier">values</span>.<span class="ruby-identifier">sort_by</span>{<span class="ruby-constant">Kernel</span>.<span class="ruby-identifier">rand</span>} )
1067
- <span class="ruby-keyword kw">end</span>
1068
- </pre>
1069
- </div>
1070
- </div>
1071
- </div>
1072
- <div class="method">
1073
- <div class="title">
1074
- <a name="M000082"></a><b>shuffle!</b>()
1075
- </div>
1076
- <div class="description">
1077
- <p>
1078
- Destructive shuffle_hash. Arrange the values in a new random order.
1079
- </p>
1080
- <pre>
1081
- h = {:a =&gt; 1, :b =&gt; 2, :c =&gt; 3}
1082
- h.shuffle_hash!
1083
- h #=&gt; {:b=&gt;2, :c=&gt;1, :a=&gt;3}
1084
- </pre>
1085
- </div>
1086
- <div class="sourcecode">
1087
- <p class="source-link">[ <a href="javascript:toggleSource('M000082_source')" id="l_M000082_source">show source</a> ]</p>
1088
- <div id="M000082_source" class="dyn-source">
1089
- <pre>
1090
- <span class="ruby-comment cmt"># File lib/facets/core/hash/shuffle.rb, line 22</span>
1091
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shuffle!</span>
1092
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">replace</span>( <span class="ruby-identifier">shuffle</span> )
1093
- <span class="ruby-keyword kw">end</span>
1094
- </pre>
1095
- </div>
1096
- </div>
1097
- </div>
1098
- <div class="method">
1099
- <div class="title">
1100
- <a name="M000090"></a><b>stringify_keys</b>( from_class=nil )
1101
- </div>
1102
- <div class="description">
1103
- <p>
1104
- Alias for <a href="Hash.html#M000089">keys_to_s</a>
1105
- </p>
1106
- </div>
1107
- </div>
1108
- <div class="method">
1109
- <div class="title">
1110
- <a name="M000092"></a><b>stringify_keys!</b>( from_class=nil )
1111
- </div>
1112
- <div class="description">
1113
- <p>
1114
- Alias for <a href="Hash.html#M000091">keys_to_s!</a>
1115
- </p>
1116
- </div>
1117
- </div>
1118
- <div class="method">
1119
- <div class="title">
1120
- <a name="M000072"></a><b>swap!</b>( key1, key2 )
1121
- </div>
1122
- <div class="description">
1123
- <p>
1124
- Swap the values of a pair of keys in place.
1125
- </p>
1126
- <pre>
1127
- {:a=&gt;1,:b=&gt;2}.swap! #=&gt; {:a=&gt;2,:b=&gt;1}
1128
- </pre>
1129
- </div>
1130
- <div class="sourcecode">
1131
- <p class="source-link">[ <a href="javascript:toggleSource('M000072_source')" id="l_M000072_source">show source</a> ]</p>
1132
- <div id="M000072_source" class="dyn-source">
1133
- <pre>
1134
- <span class="ruby-comment cmt"># File lib/facets/core/hash/swap.rb, line 7</span>
1135
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">swap!</span>( <span class="ruby-identifier">key1</span>, <span class="ruby-identifier">key2</span> )
1136
- <span class="ruby-identifier">tmp</span> = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">key1</span>]
1137
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">key1</span>] = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">key2</span>]
1138
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">key2</span>] = <span class="ruby-identifier">tmp</span>
1139
- <span class="ruby-keyword kw">self</span>
1140
- <span class="ruby-keyword kw">end</span>
1141
- </pre>
1142
- </div>
1143
- </div>
1144
- </div>
1145
- <div class="method">
1146
- <div class="title">
1147
- <a name="M000088"></a><b>swapkey!</b>( newkey, oldkey )
1148
- </div>
1149
- <div class="description">
1150
- <p>
1151
- Modifies the receiving <a href="Hash.html">Hash</a> so that the value
1152
- previously referred to by <em>oldkey</em> is referenced by <em>newkey</em>;
1153
- <em>oldkey</em> is removed from the <a href="Hash.html">Hash</a>. If
1154
- <em>oldkey</em> does not exist as a key in the <a
1155
- href="Hash.html">Hash</a>, no change is effected.
1156
- </p>
1157
- <p>
1158
- Returns a reference to the <a href="Hash.html">Hash</a>.
1159
- </p>
1160
- <pre>
1161
- foo = { :a=&gt;1, :b=&gt;2 }
1162
- foo.swapkey!('a',:a) #=&gt; { 'a'=&gt;1, :b=&gt;2 }
1163
- foo.swapkey!('b',:b) #=&gt; { 'a'=&gt;1, 'b'=&gt;2 }
1164
- foo.swapkey!('foo','bar') #=&gt; { 'a'=&gt;1, 'b'=&gt;2 }
1165
- </pre>
1166
- </div>
1167
- <div class="sourcecode">
1168
- <p class="source-link">[ <a href="javascript:toggleSource('M000088_source')" id="l_M000088_source">show source</a> ]</p>
1169
- <div id="M000088_source" class="dyn-source">
1170
- <pre>
1171
- <span class="ruby-comment cmt"># File lib/facets/core/hash/swapkey.rb, line 16</span>
1172
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">swapkey!</span>( <span class="ruby-identifier">newkey</span>, <span class="ruby-identifier">oldkey</span> )
1173
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">newkey</span>] = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">oldkey</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">oldkey</span>)
1174
- <span class="ruby-keyword kw">self</span>
1175
- <span class="ruby-keyword kw">end</span>
1176
- </pre>
1177
- </div>
1178
- </div>
1179
- </div>
1180
- <div class="method">
1181
- <div class="title">
1182
- <a name="M000066"></a><b>symbolize_keys</b>( from_class=String )
1183
- </div>
1184
- <div class="description">
1185
- <p>
1186
- Alias for <a href="Hash.html#M000065">keys_to_sym</a>
1187
- </p>
1188
- </div>
1189
- </div>
1190
- <div class="method">
1191
- <div class="title">
1192
- <a name="M000068"></a><b>symbolize_keys!</b>( from_class=String )
1193
- </div>
1194
- <div class="description">
1195
- <p>
1196
- Alias for <a href="Hash.html#M000067">keys_to_sym!</a>
1197
- </p>
1198
- </div>
1199
- </div>
1200
- <div class="method">
1201
- <div class="title">
1202
- <a name="M000076"></a><b>to_h</b>()
1203
- </div>
1204
- <div class="description">
1205
- <p>
1206
- Return a rehashing of <em>self</em>.
1207
- </p>
1208
- <pre>
1209
- {&quot;a&quot;=&gt;1,&quot;b&quot;=&gt;2}.to_h #=&gt; {&quot;b&quot;=&gt;2,&quot;a&quot;=&gt;1}
1210
- </pre>
1211
- </div>
1212
- <div class="sourcecode">
1213
- <p class="source-link">[ <a href="javascript:toggleSource('M000076_source')" id="l_M000076_source">show source</a> ]</p>
1214
- <div id="M000076_source" class="dyn-source">
1215
- <pre>
1216
- <span class="ruby-comment cmt"># File lib/facets/core/hash/to_h.rb, line 10</span>
1217
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_h</span>; <span class="ruby-identifier">rehash</span>; <span class="ruby-keyword kw">end</span>
1218
- </pre>
1219
- </div>
1220
- </div>
1221
- </div>
1222
- <div class="method">
1223
- <div class="title">
1224
- <a name="M000056"></a><b>to_ostruct</b>()
1225
- </div>
1226
- <div class="description">
1227
- <p>
1228
- Turns a hash into a generic object using an <a
1229
- href="OpenStruct.html">OpenStruct</a>.
1230
- </p>
1231
- <pre>
1232
- o = { 'a' =&gt; 1 }.to_ostruct
1233
- o.a #=&gt; 1
1234
- </pre>
1235
- </div>
1236
- <div class="sourcecode">
1237
- <p class="source-link">[ <a href="javascript:toggleSource('M000056_source')" id="l_M000056_source">show source</a> ]</p>
1238
- <div id="M000056_source" class="dyn-source">
1239
- <pre>
1240
- <span class="ruby-comment cmt"># File lib/facets/core/hash/to_ostruct.rb, line 10</span>
1241
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_ostruct</span>
1242
- <span class="ruby-constant">OpenStruct</span>.<span class="ruby-identifier">new</span>( <span class="ruby-keyword kw">self</span> )
1243
- <span class="ruby-keyword kw">end</span>
1244
- </pre>
1245
- </div>
1246
- </div>
1247
- </div>
1248
- <div class="method">
1249
- <div class="title">
1250
- <a name="M000087"></a><b>to_ostruct_recurse</b>( exclude={} )
1251
- </div>
1252
- <div class="description">
1253
- <p>
1254
- Like <a href="Hash.html#M000056">to_ostruct</a> but recusively objectifies
1255
- all hash elements as well.
1256
- </p>
1257
- <pre>
1258
- o = { 'a' =&gt; { 'b' =&gt; 1 } }.to_ostruct_recurse
1259
- o.a.b #=&gt; 1
1260
- </pre>
1261
- <p>
1262
- The <tt>exclude</tt> parameter is used internally to prevent infinite
1263
- recursion and is not intended to be utilized by the end-user. But for more
1264
- advance use, if there is a particular subhash you would like to prevent
1265
- from being converted to an OpoenStruct then include it in the
1266
- <tt>exclude</tt> hash referencing itself. Eg.
1267
- </p>
1268
- <pre>
1269
- h = { 'a' =&gt; { 'b' =&gt; 1 } }
1270
- o = h.to_ostruct_recurse( { h['a'] =&gt; h['a'] } )
1271
- o.a['b'] #=&gt; 1
1272
- </pre>
1273
- </div>
1274
- <div class="sourcecode">
1275
- <p class="source-link">[ <a href="javascript:toggleSource('M000087_source')" id="l_M000087_source">show source</a> ]</p>
1276
- <div id="M000087_source" class="dyn-source">
1277
- <pre>
1278
- <span class="ruby-comment cmt"># File lib/facets/core/hash/to_ostruct_recurse.rb, line 26</span>
1279
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_ostruct_recurse</span>( <span class="ruby-identifier">exclude</span>={} )
1280
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">exclude</span>[<span class="ruby-keyword kw">self</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">exclude</span>.<span class="ruby-identifier">key?</span>( <span class="ruby-keyword kw">self</span> )
1281
- <span class="ruby-identifier">o</span> = <span class="ruby-identifier">exclude</span>[<span class="ruby-keyword kw">self</span>] = <span class="ruby-constant">OpenStruct</span>.<span class="ruby-identifier">new</span>
1282
- <span class="ruby-identifier">h</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>
1283
- <span class="ruby-identifier">each_pair</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
1284
- <span class="ruby-identifier">h</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">v</span>.<span class="ruby-identifier">to_ostruct_recurse</span>( <span class="ruby-identifier">exclude</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">v</span>.<span class="ruby-identifier">respond_to?</span>( <span class="ruby-identifier">:to_ostruct_recurse</span> )
1285
- <span class="ruby-keyword kw">end</span>
1286
- <span class="ruby-identifier">o</span>.<span class="ruby-identifier">__update__</span>( <span class="ruby-identifier">h</span> )
1287
- <span class="ruby-keyword kw">end</span>
1288
- </pre>
1289
- </div>
1290
- </div>
1291
- </div>
1292
- <div class="method">
1293
- <div class="title">
1294
- <a name="M000099"></a><b>to_proc</b>()
1295
- </div>
1296
- <div class="description">
1297
- <p>
1298
- Constructs a <a href="Proc.html">Proc</a> object from a hash such that the
1299
- parameter of the <a href="Proc.html">Proc</a> is assigned the hash keys as
1300
- attributes.
1301
- </p>
1302
- <pre>
1303
- h = { :a =&gt; 1 }
1304
- p = h.to_proc
1305
- o = OpenStruct.new
1306
- p.call(o)
1307
- o.a #=&gt; 1
1308
- </pre>
1309
- </div>
1310
- <div class="sourcecode">
1311
- <p class="source-link">[ <a href="javascript:toggleSource('M000099_source')" id="l_M000099_source">show source</a> ]</p>
1312
- <div id="M000099_source" class="dyn-source">
1313
- <pre>
1314
- <span class="ruby-comment cmt"># File lib/facets/core/hash/to_proc.rb, line 15</span>
1315
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_proc</span>
1316
- <span class="ruby-identifier">lambda</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">o</span><span class="ruby-operator">|</span>
1317
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
1318
- <span class="ruby-identifier">ke</span> = <span class="ruby-node">&quot;#{k}=&quot;</span>
1319
- <span class="ruby-identifier">o</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">ke</span>, <span class="ruby-identifier">v</span>)
1320
- <span class="ruby-keyword kw">end</span>
1321
- <span class="ruby-keyword kw">end</span>
1322
- <span class="ruby-keyword kw">end</span>
1323
- </pre>
1324
- </div>
1325
- </div>
1326
- </div>
1327
- <div class="method">
1328
- <div class="title">
1329
- <a name="M000100"></a><b>to_proc_with_reponse</b>()
1330
- </div>
1331
- <div class="sourcecode">
1332
- <p class="source-link">[ <a href="javascript:toggleSource('M000100_source')" id="l_M000100_source">show source</a> ]</p>
1333
- <div id="M000100_source" class="dyn-source">
1334
- <pre>
1335
- <span class="ruby-comment cmt"># File lib/facets/core/hash/to_proc.rb, line 24</span>
1336
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_proc_with_reponse</span>
1337
- <span class="ruby-identifier">lambda</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">o</span><span class="ruby-operator">|</span>
1338
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
1339
- <span class="ruby-identifier">ke</span> = <span class="ruby-node">&quot;#{k}=&quot;</span>
1340
- <span class="ruby-identifier">o</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">ke</span>, <span class="ruby-identifier">v</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">ke</span>)
1341
- <span class="ruby-keyword kw">end</span>
1342
- <span class="ruby-keyword kw">end</span>
1343
- <span class="ruby-keyword kw">end</span>
1344
- </pre>
1345
- </div>
1346
- </div>
1347
- </div>
1348
- <div class="method">
1349
- <div class="title">
1350
- <a name="M000079"></a><b>traverse</b>(&amp;b)
1351
- </div>
1352
- <div class="description">
1353
- <p>
1354
- Returns a new hash created by traversing the hash and its subhashes,
1355
- executing the given block on the key and value. The block should return a
1356
- 2-element array of the form +[key, value]+.
1357
- </p>
1358
- <pre>
1359
- h = { &quot;A&quot;=&gt;&quot;A&quot;, &quot;B&quot;=&gt;&quot;B&quot; }
1360
- g = h.traverse { |k,v| [k.downcase, v] }
1361
- g #=&gt; { &quot;a&quot;=&gt;&quot;A&quot;, &quot;b&quot;=&gt;&quot;B&quot; }
1362
- </pre>
1363
- </div>
1364
- <div class="sourcecode">
1365
- <p class="source-link">[ <a href="javascript:toggleSource('M000079_source')" id="l_M000079_source">show source</a> ]</p>
1366
- <div id="M000079_source" class="dyn-source">
1367
- <pre>
1368
- <span class="ruby-comment cmt"># File lib/facets/core/hash/traverse.rb, line 16</span>
1369
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">traverse</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">b</span>)
1370
- <span class="ruby-identifier">inject</span>({}) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">h</span>,(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>)<span class="ruby-operator">|</span>
1371
- <span class="ruby-identifier">v</span> = ( <span class="ruby-constant">Hash</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">v</span> <span class="ruby-value">? </span><span class="ruby-identifier">v</span>.<span class="ruby-identifier">traverse</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">b</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">v</span> )
1372
- <span class="ruby-identifier">nk</span>, <span class="ruby-identifier">nv</span> = <span class="ruby-identifier">b</span>[<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>]
1373
- <span class="ruby-identifier">h</span>[<span class="ruby-identifier">nk</span>] = <span class="ruby-identifier">nv</span> <span class="ruby-comment cmt">#( Hash === v ? v.traverse(base,&amp;b) : nv )</span>
1374
- <span class="ruby-identifier">h</span>
1375
- <span class="ruby-keyword kw">end</span>
1376
- <span class="ruby-keyword kw">end</span>
1377
- </pre>
1378
- </div>
1379
- </div>
1380
- </div>
1381
- <div class="method">
1382
- <div class="title">
1383
- <a name="M000080"></a><b>traverse!</b>(&amp;b)
1384
- </div>
1385
- <div class="description">
1386
- <p>
1387
- In place version of traverse, which traverses the hash and its subhashes,
1388
- executing the given block on the key and value.
1389
- </p>
1390
- <pre>
1391
- h = { &quot;A&quot;=&gt;&quot;A&quot;, &quot;B&quot;=&gt;&quot;B&quot; }
1392
- h.traverse! { |k,v| [k.downcase, v] }
1393
- h #=&gt; { &quot;a&quot;=&gt;&quot;A&quot;, &quot;b&quot;=&gt;&quot;B&quot; }
1394
- </pre>
1395
- </div>
1396
- <div class="sourcecode">
1397
- <p class="source-link">[ <a href="javascript:toggleSource('M000080_source')" id="l_M000080_source">show source</a> ]</p>
1398
- <div id="M000080_source" class="dyn-source">
1399
- <pre>
1400
- <span class="ruby-comment cmt"># File lib/facets/core/hash/traverse.rb, line 32</span>
1401
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">traverse!</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">b</span>)
1402
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">replace</span>( <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">traverse</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">b</span>) )
1403
- <span class="ruby-keyword kw">end</span>
1404
- </pre>
1405
- </div>
1406
- </div>
1407
- </div>
1408
- <div class="method">
1409
- <div class="title">
1410
- <a name="M000098"></a><b>update_each</b>( {|| ...}
1411
- </div>
1412
- <div class="description">
1413
- <p>
1414
- Iterates through each pair and updates a the hash in place. This is
1415
- formally equivalent to <a href="Hash.html#M000049">collate!</a> But does
1416
- not use <a href="Hash.html#M000048">collate</a> to accomplish the task.
1417
- Hence <a href="Hash.html#M000098">update_each</a> is probably a bit faster.
1418
- </p>
1419
- <pre>
1420
- # TODO
1421
- </pre>
1422
- </div>
1423
- <div class="sourcecode">
1424
- <p class="source-link">[ <a href="javascript:toggleSource('M000098_source')" id="l_M000098_source">show source</a> ]</p>
1425
- <div id="M000098_source" class="dyn-source">
1426
- <pre>
1427
- <span class="ruby-comment cmt"># File lib/facets/core/hash/update_each.rb, line 14</span>
1428
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">update_each</span> <span class="ruby-comment cmt"># :yield:</span>
1429
- <span class="ruby-identifier">dup</span>.<span class="ruby-identifier">each_pair</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">update</span>( <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>) ); }
1430
- <span class="ruby-keyword kw">self</span>
1431
- <span class="ruby-keyword kw">end</span>
1432
- </pre>
1433
- </div>
1434
- </div>
1435
- </div>
1436
- <div class="method">
1437
- <div class="title">
1438
- <a name="M000094"></a><b>update_keys</b>() {|k| ...}
1439
- </div>
1440
- <div class="sourcecode">
1441
- <p class="source-link">[ <a href="javascript:toggleSource('M000094_source')" id="l_M000094_source">show source</a> ]</p>
1442
- <div id="M000094_source" class="dyn-source">
1443
- <pre>
1444
- <span class="ruby-comment cmt"># File lib/facets/core/hash/update_keys.rb, line 4</span>
1445
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">update_keys</span>
1446
- <span class="ruby-identifier">each</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>) ; <span class="ruby-identifier">store</span>( <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">k</span>), <span class="ruby-identifier">v</span> ) }
1447
- <span class="ruby-keyword kw">end</span>
1448
- </pre>
1449
- </div>
1450
- </div>
1451
- </div>
1452
- <div class="method">
1453
- <div class="title">
1454
- <a name="M000057"></a><b>update_values</b>() {|v| ...}
1455
- </div>
1456
- <div class="sourcecode">
1457
- <p class="source-link">[ <a href="javascript:toggleSource('M000057_source')" id="l_M000057_source">show source</a> ]</p>
1458
- <div id="M000057_source" class="dyn-source">
1459
- <pre>
1460
- <span class="ruby-comment cmt"># File lib/facets/core/hash/update_values.rb, line 4</span>
1461
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">update_values</span>
1462
- <span class="ruby-identifier">each</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">store</span>( <span class="ruby-identifier">k</span>, <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">v</span>) ) }
1463
- <span class="ruby-keyword kw">end</span>
1464
- </pre>
1465
- </div>
1466
- </div>
1467
- </div>
1468
- <div class="method">
1469
- <div class="title">
1470
- <a name="M000077"></a><b>variablize_keys</b>( of_class=nil )
1471
- </div>
1472
- <div class="description">
1473
- <p>
1474
- Converts all keys in the <a href="Hash.html">Hash</a> to be <a
1475
- href="String.html">String</a> values, returning a new <a
1476
- href="Hash.html">Hash</a>. With a from_class parameter, limits conversion
1477
- to only a certain class of keys. It defaults to nil which convert any key
1478
- class.
1479
- </p>
1480
- <pre>
1481
- foo = { :name=&gt;'Gavin', :wife=&gt;:Lisa }
1482
- foo.variablize_keys #=&gt; { &quot;@name&quot;=&gt;&quot;Gavin&quot;, &quot;@wife&quot;=&gt;:Lisa }
1483
- foo.inspect #=&gt; { :name =&gt;&quot;Gavin&quot;, :wife=&gt;:Lisa }
1484
- </pre>
1485
- </div>
1486
- <div class="sourcecode">
1487
- <p class="source-link">[ <a href="javascript:toggleSource('M000077_source')" id="l_M000077_source">show source</a> ]</p>
1488
- <div id="M000077_source" class="dyn-source">
1489
- <pre>
1490
- <span class="ruby-comment cmt"># File lib/facets/core/hash/variablize_keys.rb, line 11</span>
1491
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">variablize_keys</span>( <span class="ruby-identifier">of_class</span>=<span class="ruby-keyword kw">nil</span> )
1492
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>.<span class="ruby-identifier">variablize_keys!</span>( <span class="ruby-identifier">of_class</span> )
1493
- <span class="ruby-keyword kw">end</span>
1494
- </pre>
1495
- </div>
1496
- </div>
1497
- </div>
1498
- <div class="method">
1499
- <div class="title">
1500
- <a name="M000078"></a><b>variablize_keys!</b>( of_class=nil )
1501
- </div>
1502
- <div class="description">
1503
- <p>
1504
- Synonym for Hash#keys_to_string, but modifies the receiver in place (and
1505
- returns it). With a from_class parameter, limits conversion to only a
1506
- certain class of keys. It defaults to nil which convert any key class.
1507
- </p>
1508
- <pre>
1509
- foo = { :name=&gt;'Gavin', :wife=&gt;:Lisa }
1510
- foo.variablize_keys! #=&gt; { &quot;@name&quot;=&gt;&quot;Gavin&quot;, &quot;@wife&quot;=&gt;:Lisa }
1511
- foo.inspect #=&gt; { &quot;@name&quot;=&gt;&quot;Gavin&quot;, &quot;@wife&quot;=&gt;:Lisa }
1512
- </pre>
1513
- </div>
1514
- <div class="sourcecode">
1515
- <p class="source-link">[ <a href="javascript:toggleSource('M000078_source')" id="l_M000078_source">show source</a> ]</p>
1516
- <div id="M000078_source" class="dyn-source">
1517
- <pre>
1518
- <span class="ruby-comment cmt"># File lib/facets/core/hash/variablize_keys.rb, line 23</span>
1519
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">variablize_keys!</span>( <span class="ruby-identifier">of_class</span>=<span class="ruby-keyword kw">nil</span> )
1520
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Parameter must be a class&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">of_class</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">of_class</span>
1521
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">of_class</span>
1522
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_key</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
1523
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:to_s</span>) <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">class</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">of_class</span>
1524
- <span class="ruby-identifier">k</span> = <span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_s</span>
1525
- <span class="ruby-identifier">nk</span> = <span class="ruby-identifier">k</span>[<span class="ruby-value">0</span>,<span class="ruby-value">1</span>] <span class="ruby-operator">!=</span> <span class="ruby-value str">'@'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">k</span> <span class="ruby-operator">:</span> <span class="ruby-node">&quot;@#{k}&quot;</span>
1526
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">nk</span>]=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>)
1527
- <span class="ruby-keyword kw">end</span>
1528
- <span class="ruby-keyword kw">end</span>
1529
- <span class="ruby-keyword kw">else</span>
1530
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">each_key</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span><span class="ruby-operator">|</span>
1531
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">k</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:to_s</span>)
1532
- <span class="ruby-identifier">k</span> = <span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_s</span>
1533
- <span class="ruby-identifier">nk</span> = <span class="ruby-identifier">k</span>[<span class="ruby-value">0</span>,<span class="ruby-value">1</span>] <span class="ruby-operator">!=</span> <span class="ruby-value str">'@'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">k</span> <span class="ruby-operator">:</span> <span class="ruby-node">&quot;@#{k}&quot;</span>
1534
- <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">nk</span>]=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">k</span>)
1535
- <span class="ruby-keyword kw">end</span>
1536
- <span class="ruby-keyword kw">end</span>
1537
- <span class="ruby-keyword kw">end</span>
1538
- <span class="ruby-keyword kw">self</span>
1539
- <span class="ruby-keyword kw">end</span>
1540
- </pre>
1541
- </div>
1542
- </div>
1543
- </div>
1544
- <div class="method">
1545
- <div class="title">
1546
- <a name="M000093"></a><b>weave</b>(h)
1547
- </div>
1548
- <div class="description">
1549
- <p>
1550
- Weaves two hashes producing a new hash. The two hashes need to be
1551
- compatible according to the following rules for each node:
1552
- </p>
1553
- <pre>
1554
- &lt;tt&gt;
1555
- hash, hash =&gt; hash (recursive +)
1556
- hash, array =&gt; error
1557
- hash, value =&gt; error
1558
- array, hash =&gt; error
1559
- array, array =&gt; array + array
1560
- array, value =&gt; array &lt;&lt; value
1561
- value, hash =&gt; error
1562
- value, array =&gt; array.unshift(valueB)
1563
- valueA, valueB =&gt; valueB
1564
- &lt;/tt&gt;
1565
- </pre>
1566
- <p>
1567
- Example:
1568
- </p>
1569
- <pre>
1570
- # to do
1571
- </pre>
1572
- </div>
1573
- <div class="sourcecode">
1574
- <p class="source-link">[ <a href="javascript:toggleSource('M000093_source')" id="l_M000093_source">show source</a> ]</p>
1575
- <div id="M000093_source" class="dyn-source">
1576
- <pre>
1577
- <span class="ruby-comment cmt"># File lib/facets/core/hash/weave.rb, line 23</span>
1578
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">weave</span>(<span class="ruby-identifier">h</span>)
1579
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;Hash expected&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">h</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Hash</span>)
1580
- <span class="ruby-identifier">s</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">clone</span>
1581
- <span class="ruby-identifier">h</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
1582
- <span class="ruby-identifier">node_is_hash</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Hash</span>)
1583
- <span class="ruby-identifier">node_is_array</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Array</span>)
1584
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">k</span>)
1585
- <span class="ruby-identifier">self_node_is_hash</span> = <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>].<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Hash</span>)
1586
- <span class="ruby-identifier">self_node_is_array</span> = <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>].<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Array</span>)
1587
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">self_node_is_hash</span>
1588
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">node_is_hash</span>
1589
- <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>].<span class="ruby-identifier">weave</span>(<span class="ruby-identifier">node</span>)
1590
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">node_is_array</span>
1591
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">'Incompatible hash addition'</span> <span class="ruby-comment cmt">#self[k] = node</span>
1592
- <span class="ruby-keyword kw">else</span>
1593
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">'Incompatible hash addition'</span> <span class="ruby-comment cmt">#self[k] = node</span>
1594
- <span class="ruby-keyword kw">end</span>
1595
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">self_node_is_array</span>
1596
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">node_is_hash</span>
1597
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">'Incompatible hash addition'</span> <span class="ruby-comment cmt">#self[k] = node</span>
1598
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">node_is_array</span>
1599
- <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>] <span class="ruby-operator">+=</span> <span class="ruby-identifier">node</span>
1600
- <span class="ruby-keyword kw">else</span>
1601
- <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">node</span>
1602
- <span class="ruby-keyword kw">end</span>
1603
- <span class="ruby-keyword kw">else</span>
1604
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">node_is_hash</span>
1605
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">'Incompatible hash addition'</span> <span class="ruby-comment cmt">#self[k] = node</span>
1606
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">node_is_array</span>
1607
- <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>].<span class="ruby-identifier">unshift</span>( <span class="ruby-identifier">node</span> )
1608
- <span class="ruby-keyword kw">else</span>
1609
- <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">node</span>
1610
- <span class="ruby-keyword kw">end</span>
1611
- <span class="ruby-keyword kw">end</span>
1612
- <span class="ruby-keyword kw">else</span>
1613
- <span class="ruby-identifier">s</span>[<span class="ruby-identifier">k</span>] = <span class="ruby-identifier">node</span>
1614
- <span class="ruby-keyword kw">end</span>
1615
- }
1616
- <span class="ruby-identifier">s</span>
1617
- <span class="ruby-keyword kw">end</span>
1618
- </pre>
1619
- </div>
1620
- </div>
1621
- </div>
1622
- </div>
1623
-
1624
- </div>
1625
-
1626
- </body>
1627
- </html>