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: Logger</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 />Logger</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/logger/format_rb.html">lib/facets/core/logger/format.rb</a>
61
- </td>
62
- </tr>
63
- <tr>
64
- <td>Parent:</td>
65
- <td>
66
- <a href="Object.html">
67
- Object
68
- </a>
69
- </td>
70
- </tr>
71
- </table>
72
- </td>
73
- </tr>
74
- </table>
75
- <!-- banner header -->
76
-
77
- <div id="bodyContent">
78
- <div id="content">
79
-
80
-
81
-
82
-
83
- <div class="sectiontitle">Methods</div>
84
- <ul>
85
- <li><a href="#M000247">format</a></li>
86
- <li><a href="#M000248">format_message</a></li>
87
- </ul>
88
-
89
-
90
-
91
-
92
-
93
-
94
- <div class="sectiontitle">Private Instance methods</div>
95
- <div class="method">
96
- <div class="title">
97
- <a name="M000247"></a><b>format</b>(&amp;format_proc)
98
- </div>
99
- <div class="description">
100
- <p>
101
- Dictate the way in which this logger should format the messages it
102
- displays. This method requires a block. The block should return formatted
103
- strings given severity, timestamp, msg, progname.
104
- </p>
105
- <p>
106
- Useless example:
107
- </p>
108
- <p>
109
- logger = Logger.new logger.format do |severity, timestamp, msg, progname|
110
- </p>
111
- <pre>
112
- &quot;#{progname}@#{timestamp} - #{severity}::#{msg}&quot;
113
- </pre>
114
- <p>
115
- end
116
- </p>
117
- </div>
118
- <div class="sourcecode">
119
- <p class="source-link">[ <a href="javascript:toggleSource('M000247_source')" id="l_M000247_source">show source</a> ]</p>
120
- <div id="M000247_source" class="dyn-source">
121
- <pre>
122
- <span class="ruby-comment cmt"># File lib/facets/core/logger/format.rb, line 18</span>
123
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">format</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">format_proc</span>)
124
- <span class="ruby-identifier">raise</span> <span class="ruby-value str">'block expected'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">format_proc</span>
125
- <span class="ruby-ivar">@format_proc</span> = <span class="ruby-identifier">format_proc</span>
126
- <span class="ruby-keyword kw">end</span>
127
- </pre>
128
- </div>
129
- </div>
130
- </div>
131
- <div class="method">
132
- <div class="title">
133
- <a name="M000248"></a><b>format_message</b>(*args)
134
- </div>
135
- <div class="description">
136
- <p>
137
- hackish use of *args, give me some love
138
- </p>
139
- </div>
140
- <div class="sourcecode">
141
- <p class="source-link">[ <a href="javascript:toggleSource('M000248_source')" id="l_M000248_source">show source</a> ]</p>
142
- <div id="M000248_source" class="dyn-source">
143
- <pre>
144
- <span class="ruby-comment cmt"># File lib/facets/core/logger/format.rb, line 24</span>
145
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">format_message</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
146
- <span class="ruby-ivar">@format_proc</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@format_proc</span>.<span class="ruby-identifier">call</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>) <span class="ruby-operator">:</span> <span class="ruby-keyword kw">super</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</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,195 +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: MatchData</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 />MatchData</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/matchdata/matchtree_rb.html">lib/facets/core/matchdata/matchtree.rb</a>
61
- <a href="../files/lib/facets/core/matchdata/match_rb.html">lib/facets/core/matchdata/match.rb</a>
62
- </td>
63
- </tr>
64
- <tr>
65
- <td>Parent:</td>
66
- <td>
67
- <a href="Object.html">
68
- Object
69
- </a>
70
- </td>
71
- </tr>
72
- </table>
73
- </td>
74
- </tr>
75
- </table>
76
- <!-- banner header -->
77
-
78
- <div id="bodyContent">
79
- <div id="content">
80
-
81
-
82
-
83
-
84
- <div class="sectiontitle">Methods</div>
85
- <ul>
86
- <li><a href="#M000147">match</a></li>
87
- <li><a href="#M000145">matchset</a></li>
88
- <li><a href="#M000146">matchtree</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="M000147"></a><b>match</b>()
100
- </div>
101
- <div class="description">
102
- <p>
103
- Return the primary match string. This is equivalent to +md[0]+.
104
- </p>
105
- <pre>
106
- md = /123/.match &quot;123456&quot;
107
- md.match #=&gt; &quot;123&quot;
108
- </pre>
109
- </div>
110
- <div class="sourcecode">
111
- <p class="source-link">[ <a href="javascript:toggleSource('M000147_source')" id="l_M000147_source">show source</a> ]</p>
112
- <div id="M000147_source" class="dyn-source">
113
- <pre>
114
- <span class="ruby-comment cmt"># File lib/facets/core/matchdata/match.rb, line 9</span>
115
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">match</span>
116
- <span class="ruby-keyword kw">self</span>[<span class="ruby-value">0</span>]
117
- <span class="ruby-keyword kw">end</span>
118
- </pre>
119
- </div>
120
- </div>
121
- </div>
122
- <div class="method">
123
- <div class="title">
124
- <a name="M000145"></a><b>matchset</b>()
125
- </div>
126
- <div class="description">
127
- <p>
128
- Returns [ pre_match, matchtree, post_match ]. (see matchtree)
129
- </p>
130
- <pre>
131
- md = /(bb)(cc(dd))(ee)/.match &quot;XXaabbccddeeffXX&quot;
132
- md.to_a #=&gt; [&quot;XXaabbccddeeffXX&quot;, &quot;bb&quot;, &quot;ccdd&quot;, &quot;dd&quot;, &quot;ee&quot;]
133
- md.matchset #=&gt; [&quot;XXaa&quot;, [[&quot;bb&quot;], [&quot;cc&quot;, [&quot;dd&quot;]], &quot;ee&quot;], &quot;ffXX&quot;]
134
- </pre>
135
- </div>
136
- <div class="sourcecode">
137
- <p class="source-link">[ <a href="javascript:toggleSource('M000145_source')" id="l_M000145_source">show source</a> ]</p>
138
- <div id="M000145_source" class="dyn-source">
139
- <pre>
140
- <span class="ruby-comment cmt"># File lib/facets/core/matchdata/matchtree.rb, line 10</span>
141
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">matchset</span>
142
- [<span class="ruby-identifier">pre_match</span>, <span class="ruby-identifier">matchtree</span>, <span class="ruby-identifier">post_match</span>]
143
- <span class="ruby-keyword kw">end</span>
144
- </pre>
145
- </div>
146
- </div>
147
- </div>
148
- <div class="method">
149
- <div class="title">
150
- <a name="M000146"></a><b>matchtree</b>(index=0)
151
- </div>
152
- <div class="description">
153
- <p>
154
- An alternate to to_a which returns the matches in order corresponding with
155
- the regular expression.
156
- </p>
157
- <pre>
158
- md = /(bb)(cc(dd))(ee)/.match &quot;XXaabbccddeeffXX&quot;
159
- md.to_a #=&gt; [&quot;XXaabbccddeeffXX&quot;, &quot;bb&quot;, &quot;ccdd&quot;, &quot;dd&quot;, &quot;ee&quot;]
160
- md.matchtree #=&gt; [[&quot;bb&quot;], [&quot;cc&quot;, [&quot;dd&quot;]], &quot;ee&quot;]
161
- </pre>
162
- </div>
163
- <div class="sourcecode">
164
- <p class="source-link">[ <a href="javascript:toggleSource('M000146_source')" id="l_M000146_source">show source</a> ]</p>
165
- <div id="M000146_source" class="dyn-source">
166
- <pre>
167
- <span class="ruby-comment cmt"># File lib/facets/core/matchdata/matchtree.rb, line 21</span>
168
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">matchtree</span>(<span class="ruby-identifier">index</span>=<span class="ruby-value">0</span>)
169
- <span class="ruby-identifier">ret</span>=[]
170
- <span class="ruby-identifier">b</span>, <span class="ruby-identifier">e</span>=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">begin</span>(<span class="ruby-identifier">index</span>), <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">end</span>(<span class="ruby-identifier">index</span>)
171
- <span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">index</span><span class="ruby-operator">+=</span><span class="ruby-value">1</span>)<span class="ruby-operator">&lt;=</span><span class="ruby-identifier">length</span>
172
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">index</span><span class="ruby-operator">==</span><span class="ruby-identifier">length</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">bi</span>=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">begin</span>(<span class="ruby-identifier">index</span>))<span class="ruby-operator">&gt;=</span><span class="ruby-identifier">e</span>
173
- <span class="ruby-comment cmt"># we are finished, if something is left, then add it</span>
174
- <span class="ruby-identifier">ret</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">string</span>[<span class="ruby-identifier">b</span>, <span class="ruby-identifier">e</span><span class="ruby-operator">-</span><span class="ruby-identifier">b</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">e</span><span class="ruby-operator">&gt;</span><span class="ruby-identifier">b</span>
175
- <span class="ruby-keyword kw">break</span>
176
- <span class="ruby-keyword kw">else</span>
177
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">bi</span><span class="ruby-operator">&gt;=</span><span class="ruby-identifier">b</span>
178
- <span class="ruby-identifier">ret</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">string</span>[<span class="ruby-identifier">b</span>, <span class="ruby-identifier">bi</span><span class="ruby-operator">-</span><span class="ruby-identifier">b</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">bi</span><span class="ruby-operator">&gt;</span><span class="ruby-identifier">b</span>
179
- <span class="ruby-identifier">ret</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">matchtree</span>(<span class="ruby-identifier">index</span>)
180
- <span class="ruby-identifier">b</span>=<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">end</span>(<span class="ruby-identifier">index</span>)
181
- <span class="ruby-keyword kw">end</span>
182
- <span class="ruby-keyword kw">end</span>
183
- <span class="ruby-keyword kw">end</span>
184
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">ret</span>
185
- <span class="ruby-keyword kw">end</span>
186
- </pre>
187
- </div>
188
- </div>
189
- </div>
190
- </div>
191
-
192
- </div>
193
-
194
- </body>
195
- </html>
@@ -1,1812 +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: Module</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 />Module</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/kernel/method_rb.html">lib/facets/core/kernel/method.rb</a>
61
- <a href="../files/lib/facets/core/module/redefine_method_rb.html">lib/facets/core/module/redefine_method.rb</a>
62
- <a href="../files/lib/facets/core/module/redirect_method_rb.html">lib/facets/core/module/redirect_method.rb</a>
63
- <a href="../files/lib/facets/core/module/initializer_rb.html">lib/facets/core/module/initializer.rb</a>
64
- <a href="../files/lib/facets/core/module/shadow_all_rb.html">lib/facets/core/module/shadow_all.rb</a>
65
- <a href="../files/lib/facets/core/module/is_rb.html">lib/facets/core/module/is.rb</a>
66
- <a href="../files/lib/facets/core/module/modspace_rb.html">lib/facets/core/module/modspace.rb</a>
67
- <a href="../files/lib/facets/core/module/instance_methods_rb.html">lib/facets/core/module/instance_methods.rb</a>
68
- <a href="../files/lib/facets/core/module/attr_tester_rb.html">lib/facets/core/module/attr_tester.rb</a>
69
- <a href="../files/lib/facets/core/module/integrate_rb.html">lib/facets/core/module/integrate.rb</a>
70
- <a href="../files/lib/facets/core/module/basename_rb.html">lib/facets/core/module/basename.rb</a>
71
- <a href="../files/lib/facets/core/module/generate_instance_method_name_rb.html">lib/facets/core/module/generate_instance_method_name.rb</a>
72
- <a href="../files/lib/facets/core/module/redirect_rb.html">lib/facets/core/module/redirect.rb</a>
73
- <a href="../files/lib/facets/core/module/shadow_method_rb.html">lib/facets/core/module/shadow_method.rb</a>
74
- <a href="../files/lib/facets/core/module/alias_module_function_rb.html">lib/facets/core/module/alias_module_function.rb</a>
75
- <a href="../files/lib/facets/core/module/namespace_rb.html">lib/facets/core/module/namespace.rb</a>
76
- <a href="../files/lib/facets/core/module/abstract_rb.html">lib/facets/core/module/abstract.rb</a>
77
- <a href="../files/lib/facets/core/module/this_rb.html">lib/facets/core/module/this.rb</a>
78
- <a href="../files/lib/facets/core/module/nesting_rb.html">lib/facets/core/module/nesting.rb</a>
79
- <a href="../files/lib/facets/core/module/wrap_method_rb.html">lib/facets/core/module/wrap_method.rb</a>
80
- <a href="../files/lib/facets/core/module/class_rb.html">lib/facets/core/module/class.rb</a>
81
- <a href="../files/lib/facets/core/module/ancestor_rb.html">lib/facets/core/module/ancestor.rb</a>
82
- <a href="../files/lib/facets/core/module/include_as_rb.html">lib/facets/core/module/include_as.rb</a>
83
- <a href="../files/lib/facets/core/module/rename_method_rb.html">lib/facets/core/module/rename_method.rb</a>
84
- <a href="../files/lib/facets/core/module/attr_setter_rb.html">lib/facets/core/module/attr_setter.rb</a>
85
- <a href="../files/lib/facets/core/module/rename_rb.html">lib/facets/core/module/rename.rb</a>
86
- <a href="../files/lib/facets/core/module/dirname_rb.html">lib/facets/core/module/dirname.rb</a>
87
- <a href="../files/lib/facets/core/module/attr_rb.html">lib/facets/core/module/attr.rb</a>
88
- <a href="../files/lib/facets/core/module/remove_rb.html">lib/facets/core/module/remove.rb</a>
89
- <a href="../files/lib/facets/core/module/sort_on_rb.html">lib/facets/core/module/sort_on.rb</a>
90
- <a href="../files/lib/facets/core/module/nodef_rb.html">lib/facets/core/module/nodef.rb</a>
91
- <a href="../files/lib/facets/core/module/equate_on_rb.html">lib/facets/core/module/equate_on.rb</a>
92
- <a href="../files/lib/facets/core/module/redef_rb.html">lib/facets/core/module/redef.rb</a>
93
- <a href="../files/lib/facets/core/module/clone_using_rb.html">lib/facets/core/module/clone_using.rb</a>
94
- <a href="../files/lib/facets/core/module/by_name_rb.html">lib/facets/core/module/by_name.rb</a>
95
- <a href="../files/lib/facets/core/module/memoize_rb.html">lib/facets/core/module/memoize.rb</a>
96
- <a href="../files/lib/facets/core/module/wrap_rb.html">lib/facets/core/module/wrap.rb</a>
97
- <a href="../files/lib/facets/core/module/revisal_rb.html">lib/facets/core/module/revisal.rb</a>
98
- <a href="../files/lib/facets/core/module/on_included_rb.html">lib/facets/core/module/on_included.rb</a>
99
- <a href="../files/lib/facets/core/module/attr_query_rb.html">lib/facets/core/module/attr_query.rb</a>
100
- <a href="../files/lib/facets/core/module/attr_validator_rb.html">lib/facets/core/module/attr_validator.rb</a>
101
- <a href="../files/lib/facets/core/module/class_extension_rb.html">lib/facets/core/module/class_extension.rb</a>
102
- <a href="../files/lib/facets/core/module/alias_method_chain_rb.html">lib/facets/core/module/alias_method_chain.rb</a>
103
- </td>
104
- </tr>
105
- <tr>
106
- <td>Parent:</td>
107
- <td>
108
- <a href="Object.html">
109
- Object
110
- </a>
111
- </td>
112
- </tr>
113
- </table>
114
- </td>
115
- </tr>
116
- </table>
117
- <!-- banner header -->
118
-
119
- <div id="bodyContent">
120
- <div id="content">
121
-
122
-
123
-
124
-
125
- <div class="sectiontitle">Methods</div>
126
- <ul>
127
- <li><a href="#M000164">abstract</a></li>
128
- <li><a href="#M000194">alias_method_chain</a></li>
129
- <li><a href="#M000162">alias_module_function</a></li>
130
- <li><a href="#M000168">ancestor?</a></li>
131
- <li><a href="#M000192">append_features</a></li>
132
- <li><a href="#M000193">append_features</a></li>
133
- <li><a href="#M000174">attr</a></li>
134
- <li><a href="#M000171">attr_setter</a></li>
135
- <li><a href="#M000156">attr_tester</a></li>
136
- <li><a href="#M000189">attr_tester</a></li>
137
- <li><a href="#M000190">attr_validator</a></li>
138
- <li><a href="#M000158">basename</a></li>
139
- <li><a href="#M000184">by_name</a></li>
140
- <li><a href="#M000191">class_extension</a></li>
141
- <li><a href="#M000182">clone_removing</a></li>
142
- <li><a href="#M000181">clone_renaming</a></li>
143
- <li><a href="#M000183">clone_using</a></li>
144
- <li><a href="#M000176">compare_on</a></li>
145
- <li><a href="#M000173">dirname</a></li>
146
- <li><a href="#M000178">equate_on</a></li>
147
- <li><a href="#M000159">generate_instance_method_name</a></li>
148
- <li><a href="#M000169">include_as</a></li>
149
- <li><a href="#M000151">initializer</a></li>
150
- <li><a href="#M000148">instance_method!</a></li>
151
- <li><a href="#M000155">instance_methods</a></li>
152
- <li><a href="#M000157">integrate</a></li>
153
- <li><a href="#M000153">is?</a></li>
154
- <li><a href="#M000179">key_attributes</a></li>
155
- <li><a href="#M000185">memoize</a></li>
156
- <li><a href="#M000154">modspace</a></li>
157
- <li><a href="#M000163">namespace</a></li>
158
- <li><a href="#M000166">nesting</a></li>
159
- <li><a href="#M000188">on_included</a></li>
160
- <li><a href="#M000180">redef</a></li>
161
- <li><a href="#M000149">redefine_method</a></li>
162
- <li><a href="#M000160">redirect</a></li>
163
- <li><a href="#M000150">redirect_method</a></li>
164
- <li><a href="#M000172">rename</a></li>
165
- <li><a href="#M000170">rename_method</a></li>
166
- <li><a href="#M000187">revisal</a></li>
167
- <li><a href="#M000152">shadow_all</a></li>
168
- <li><a href="#M000161">shadow_method</a></li>
169
- <li><a href="#M000177">sort_attributes</a></li>
170
- <li><a href="#M000175">sort_on</a></li>
171
- <li><a href="#M000165">this</a></li>
172
- <li><a href="#M000186">wrap</a></li>
173
- <li><a href="#M000167">wrap_method</a></li>
174
- </ul>
175
-
176
-
177
-
178
-
179
- <div class="sectiontitle">Constants</div>
180
- <table border='0' cellpadding='5'>
181
- <tr valign='top'>
182
- <td class="attr-name">METHOD_TYPES</td>
183
- <td>=</td>
184
- <td class="attr-value">[ :inherited, :ancestors, :local, :public, :private, :protected, :all ]</td>
185
- </tr>
186
- </table>
187
-
188
-
189
- <div class="sectiontitle">Public Class methods</div>
190
- <div class="method">
191
- <div class="title">
192
- <a name="M000192"></a><b>append_features</b>(mod)
193
- </div>
194
- <div class="sourcecode">
195
- <p class="source-link">[ <a href="javascript:toggleSource('M000192_source')" id="l_M000192_source">show source</a> ]</p>
196
- <div id="M000192_source" class="dyn-source">
197
- <pre>
198
- <span class="ruby-comment cmt"># File lib/facets/core/module/class_extension.rb, line 64</span>
199
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">append_features</span>(<span class="ruby-identifier">mod</span>)
200
- <span class="ruby-identifier">append_features_without_class_extension</span>(<span class="ruby-identifier">mod</span>)
201
- <span class="ruby-keyword kw">end</span>
202
- </pre>
203
- </div>
204
- </div>
205
- </div>
206
- <div class="sectiontitle">Public Instance methods</div>
207
- <div class="method">
208
- <div class="title">
209
- <a name="M000164"></a><b>abstract</b>( *sym )
210
- </div>
211
- <div class="sourcecode">
212
- <p class="source-link">[ <a href="javascript:toggleSource('M000164_source')" id="l_M000164_source">show source</a> ]</p>
213
- <div id="M000164_source" class="dyn-source">
214
- <pre>
215
- <span class="ruby-comment cmt"># File lib/facets/core/module/abstract.rb, line 13</span>
216
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">abstract</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">sym</span> )
217
- <span class="ruby-identifier">sym</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
218
- <span class="ruby-identifier">define_method</span>( <span class="ruby-identifier">s</span> ) { <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-node">&quot;undefined abstraction ##{s}&quot;</span> }
219
- }
220
- <span class="ruby-keyword kw">end</span>
221
- </pre>
222
- </div>
223
- </div>
224
- </div>
225
- <div class="method">
226
- <div class="title">
227
- <a name="M000194"></a><b>alias_method_chain</b>(target, feature=nil)
228
- </div>
229
- <div class="description">
230
- <p>
231
- Encapsulates the common pattern of:
232
- </p>
233
- <pre>
234
- alias_method :foo_without_feature, :foo
235
- alias_method :foo, :foo_with_feature
236
- </pre>
237
- <p>
238
- With this, you simply do:
239
- </p>
240
- <pre>
241
- alias_method_chain :foo, :feature
242
- </pre>
243
- <p>
244
- And both aliases are set up for you.
245
- </p>
246
- <p>
247
- Query and bang methods (foo?, foo!) keep the same punctuation:
248
- </p>
249
- <pre>
250
- alias_method_chain :foo?, :feature
251
- </pre>
252
- <p>
253
- is equivalent to
254
- </p>
255
- <pre>
256
- alias_method :foo_without_feature?, :foo?
257
- alias_method :foo?, :foo_without_feature?
258
- </pre>
259
- <p>
260
- so you can safely chain foo, foo?, and foo! with the same feature.
261
- </p>
262
- </div>
263
- <div class="sourcecode">
264
- <p class="source-link">[ <a href="javascript:toggleSource('M000194_source')" id="l_M000194_source">show source</a> ]</p>
265
- <div id="M000194_source" class="dyn-source">
266
- <pre>
267
- <span class="ruby-comment cmt"># File lib/facets/core/module/alias_method_chain.rb, line 29</span>
268
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">alias_method_chain</span>(<span class="ruby-identifier">target</span>, <span class="ruby-identifier">feature</span>=<span class="ruby-keyword kw">nil</span>)
269
- <span class="ruby-comment cmt"># Strip out punctuation on predicates or bang methods since</span>
270
- <span class="ruby-comment cmt"># e.g. target?_without_feature is not a valid method name.</span>
271
- <span class="ruby-identifier">aliased_target</span>, <span class="ruby-identifier">punctuation</span> = <span class="ruby-identifier">target</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp re">/([?!])$/</span>, <span class="ruby-value str">''</span>), <span class="ruby-identifier">$1</span>
272
- <span class="ruby-identifier">alias_method</span> <span class="ruby-node">&quot;#{aliased_target}_without_#{feature}#{punctuation}&quot;</span>, <span class="ruby-identifier">target</span>
273
- <span class="ruby-identifier">alias_method</span> <span class="ruby-identifier">target</span>, <span class="ruby-node">&quot;#{aliased_target}_with_#{feature}#{punctuation}&quot;</span>
274
- <span class="ruby-keyword kw">end</span>
275
- </pre>
276
- </div>
277
- </div>
278
- </div>
279
- <div class="method">
280
- <div class="title">
281
- <a name="M000168"></a><b>ancestor?</b>( mod )
282
- </div>
283
- <div class="description">
284
- <p>
285
- Is a given class or module an ancestor of this class or module?
286
- </p>
287
- <pre>
288
- class X ; end
289
- class Y &lt; X ; end
290
-
291
- X.ancestor?(Y)
292
- </pre>
293
- </div>
294
- <div class="sourcecode">
295
- <p class="source-link">[ <a href="javascript:toggleSource('M000168_source')" id="l_M000168_source">show source</a> ]</p>
296
- <div id="M000168_source" class="dyn-source">
297
- <pre>
298
- <span class="ruby-comment cmt"># File lib/facets/core/module/ancestor.rb, line 12</span>
299
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ancestor?</span>( <span class="ruby-identifier">mod</span> )
300
- <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">mod</span>
301
- <span class="ruby-keyword kw">end</span>
302
- </pre>
303
- </div>
304
- </div>
305
- </div>
306
- <div class="method">
307
- <div class="title">
308
- <a name="M000193"></a><b>append_features</b>(mod)
309
- </div>
310
- <div class="sourcecode">
311
- <p class="source-link">[ <a href="javascript:toggleSource('M000193_source')" id="l_M000193_source">show source</a> ]</p>
312
- <div id="M000193_source" class="dyn-source">
313
- <pre>
314
- <span class="ruby-comment cmt"># File lib/facets/core/module/class_extension.rb, line 74</span>
315
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">append_features</span>(<span class="ruby-identifier">mod</span>)
316
- <span class="ruby-identifier">append_features_without_class_extension</span>(<span class="ruby-identifier">mod</span>)
317
- <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">extend</span>(<span class="ruby-identifier">class_extension</span>)
318
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">instance_of?</span> <span class="ruby-constant">Module</span>
319
- <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">:class_extension</span>).<span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">:include</span>, <span class="ruby-identifier">class_extension</span>)
320
- <span class="ruby-keyword kw">end</span>
321
- <span class="ruby-keyword kw">end</span>
322
- </pre>
323
- </div>
324
- </div>
325
- </div>
326
- <div class="method">
327
- <div class="title">
328
- <a name="M000174"></a><b>attr</b>(*args)
329
- </div>
330
- <div class="description">
331
- <p>
332
- There&#8217;s a school of thought that says an attribute show always have a
333
- reader and a writer.
334
- </p>
335
- </div>
336
- <div class="sourcecode">
337
- <p class="source-link">[ <a href="javascript:toggleSource('M000174_source')" id="l_M000174_source">show source</a> ]</p>
338
- <div id="M000174_source" class="dyn-source">
339
- <pre>
340
- <span class="ruby-comment cmt"># File lib/facets/core/module/attr.rb, line 10</span>
341
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">attr</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
342
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">pop</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Symbol</span>) <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
343
- <span class="ruby-identifier">attr_accessor</span> <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>
344
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">collect</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> [ <span class="ruby-node">&quot;#{a}&quot;</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-node">&quot;#{a}=&quot;</span>.<span class="ruby-identifier">to_sym</span> ] }.<span class="ruby-identifier">flatten</span>
345
- <span class="ruby-keyword kw">end</span>
346
- </pre>
347
- </div>
348
- </div>
349
- </div>
350
- <div class="method">
351
- <div class="title">
352
- <a name="M000171"></a><b>attr_setter</b>(*args)
353
- </div>
354
- <div class="description">
355
- <p>
356
- Create an attribute method for both getting and setting an instance
357
- variable.
358
- </p>
359
- <pre>
360
- attr_setter :a
361
- </pre>
362
- <p>
363
- _is equivalent to_
364
- </p>
365
- <pre>
366
- def a(*args)
367
- if args.size &gt; 0
368
- @a = args[0]
369
- self
370
- else
371
- @a
372
- end
373
- end
374
- </pre>
375
- </div>
376
- <div class="sourcecode">
377
- <p class="source-link">[ <a href="javascript:toggleSource('M000171_source')" id="l_M000171_source">show source</a> ]</p>
378
- <div id="M000171_source" class="dyn-source">
379
- <pre>
380
- <span class="ruby-comment cmt"># File lib/facets/core/module/attr_setter.rb, line 23</span>
381
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">attr_setter</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
382
-
383
- <span class="ruby-identifier">make</span> = {}
384
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
385
- <span class="ruby-identifier">make</span>[<span class="ruby-node">&quot;#{a}&quot;</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-node">%{
386
- def #{a}(*args)
387
- args.size &gt; 0 ? ( @#{a}=args[0] ; self ) : @#{a}
388
- end
389
- }</span>
390
- }
391
- <span class="ruby-identifier">module_eval</span>( <span class="ruby-identifier">make</span>.<span class="ruby-identifier">values</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>) )
392
-
393
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">make</span>.<span class="ruby-identifier">keys</span>
394
- <span class="ruby-keyword kw">end</span>
395
- </pre>
396
- </div>
397
- </div>
398
- </div>
399
- <div class="method">
400
- <div class="title">
401
- <a name="M000156"></a><b>attr_tester</b>(*args)
402
- </div>
403
- <div class="description">
404
- <p>
405
- Create an tester attribute. This creates two methods for each given
406
- variable name. One is used to test the attribute and the other is used to
407
- set or toggle it.
408
- </p>
409
- <pre>
410
- attr_switch :a
411
- </pre>
412
- <p>
413
- is equivalent to
414
- </p>
415
- <pre>
416
- def a?
417
- @a ? true : @a
418
- end
419
-
420
- def a!(switch=nack)
421
- if switch == nack
422
- @a = ! @a
423
- else
424
- @a = @a ? switch : @a
425
- self
426
- end
427
- end
428
- </pre>
429
- </div>
430
- <div class="sourcecode">
431
- <p class="source-link">[ <a href="javascript:toggleSource('M000156_source')" id="l_M000156_source">show source</a> ]</p>
432
- <div id="M000156_source" class="dyn-source">
433
- <pre>
434
- <span class="ruby-comment cmt"># File lib/facets/core/module/attr_tester.rb, line 26</span>
435
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">attr_tester</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
436
- <span class="ruby-identifier">make</span> = {}
437
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
438
- <span class="ruby-identifier">make</span>[<span class="ruby-node">&quot;#{a}?&quot;</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-node">%{ def #{a}?; @#{a} ? true : @#{a}; end }</span>
439
- <span class="ruby-identifier">make</span>[<span class="ruby-node">&quot;#{a}!&quot;</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-node">%{
440
- def #{a}!(switch=nack)
441
- if switch==nack
442
- @#{a} = !@#{a}
443
- else
444
- @#{a} = @#{a} ? switch : @#{a}
445
- self
446
- end
447
- end
448
- }</span>
449
- }
450
- <span class="ruby-identifier">module_eval</span> <span class="ruby-identifier">make</span>.<span class="ruby-identifier">values</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
451
-
452
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">make</span>.<span class="ruby-identifier">keys</span>
453
- <span class="ruby-keyword kw">end</span>
454
- </pre>
455
- </div>
456
- </div>
457
- </div>
458
- <div class="method">
459
- <div class="title">
460
- <a name="M000189"></a><b>attr_tester</b>(*args)
461
- </div>
462
- <div class="description">
463
- <p>
464
- Create an tester attribute. This creates two methods for each given
465
- variable name. One is used to test the attribute and the other is used to
466
- set or toggle it.
467
- </p>
468
- <pre>
469
- attr_switch :a
470
- </pre>
471
- <p>
472
- is equivalent to
473
- </p>
474
- <pre>
475
- def a?
476
- @a ? true : @a
477
- end
478
-
479
- def a!(switch=nack)
480
- if switch == nack
481
- @a = ! @a
482
- else
483
- @a = @a ? switch : @a
484
- self
485
- end
486
- end
487
- </pre>
488
- </div>
489
- <div class="sourcecode">
490
- <p class="source-link">[ <a href="javascript:toggleSource('M000189_source')" id="l_M000189_source">show source</a> ]</p>
491
- <div id="M000189_source" class="dyn-source">
492
- <pre>
493
- <span class="ruby-comment cmt"># File lib/facets/core/module/attr_query.rb, line 26</span>
494
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">attr_tester</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
495
- <span class="ruby-identifier">make</span> = {}
496
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
497
- <span class="ruby-identifier">make</span>[<span class="ruby-node">&quot;#{a}?&quot;</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-node">%{ def #{a}?; @#{a} ? true : @#{a}; end }</span>
498
- <span class="ruby-identifier">make</span>[<span class="ruby-node">&quot;#{a}!&quot;</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-node">%{
499
- def #{a}!(switch=nack)
500
- if switch==nack
501
- @#{a} = !@#{a}
502
- else
503
- @#{a} = @#{a} ? switch : @#{a}
504
- self
505
- end
506
- end
507
- }</span>
508
- }
509
- <span class="ruby-identifier">module_eval</span> <span class="ruby-identifier">make</span>.<span class="ruby-identifier">values</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
510
-
511
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">make</span>.<span class="ruby-identifier">keys</span>
512
- <span class="ruby-keyword kw">end</span>
513
- </pre>
514
- </div>
515
- </div>
516
- </div>
517
- <div class="method">
518
- <div class="title">
519
- <a name="M000190"></a><b>attr_validator</b>(*symbols, &amp;validator)
520
- </div>
521
- <div class="description">
522
- <p>
523
- Like attr_writer, but the writer method validates the setting against the
524
- given block.
525
- </p>
526
- </div>
527
- <div class="sourcecode">
528
- <p class="source-link">[ <a href="javascript:toggleSource('M000190_source')" id="l_M000190_source">show source</a> ]</p>
529
- <div id="M000190_source" class="dyn-source">
530
- <pre>
531
- <span class="ruby-comment cmt"># File lib/facets/core/module/attr_validator.rb, line 7</span>
532
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">attr_validator</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">symbols</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">validator</span>)
533
- <span class="ruby-identifier">symbols</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">symbol</span><span class="ruby-operator">|</span>
534
- <span class="ruby-identifier">define_method</span> <span class="ruby-node">&quot;#{symbol}=&quot;</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
535
- <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">validator</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">val</span>)
536
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Invalid value provided for #{symbol}&quot;</span>
537
- <span class="ruby-keyword kw">end</span>
538
- <span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-node">&quot;@#{symbol}&quot;</span>, <span class="ruby-identifier">val</span>)
539
- <span class="ruby-keyword kw">end</span>
540
- <span class="ruby-keyword kw">end</span>
541
- <span class="ruby-keyword kw">end</span>
542
- </pre>
543
- </div>
544
- </div>
545
- </div>
546
- <div class="method">
547
- <div class="title">
548
- <a name="M000158"></a><b>basename</b>()
549
- </div>
550
- <div class="description">
551
- <p>
552
- Returns the root name of the module/class.
553
- </p>
554
- <pre>
555
- module Example
556
- class Demo
557
- end
558
- end
559
-
560
- Demo.name #=&gt; Example::Demo
561
- Demo.basename #=&gt; Demo
562
- </pre>
563
- <p>
564
- For anonymous modules this will provide a basename based on Module#inspect.
565
- </p>
566
- <pre>
567
- m = Module.new
568
- m.inspect #=&gt; &quot;#&lt;Module:0xb7bb0434&gt;&quot;
569
- m.basename #=&gt; &quot;Module_0xb7bb0434&quot;
570
- </pre>
571
- </div>
572
- <div class="sourcecode">
573
- <p class="source-link">[ <a href="javascript:toggleSource('M000158_source')" id="l_M000158_source">show source</a> ]</p>
574
- <div id="M000158_source" class="dyn-source">
575
- <pre>
576
- <span class="ruby-comment cmt"># File lib/facets/core/module/basename.rb, line 20</span>
577
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">basename</span>
578
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">name</span> <span class="ruby-keyword kw">and</span> <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">empty?</span>
579
- <span class="ruby-identifier">name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/^.*::/</span>, <span class="ruby-value str">''</span>)
580
- <span class="ruby-keyword kw">else</span>
581
- <span class="ruby-keyword kw">nil</span> <span class="ruby-comment cmt">#inspect.gsub('#&lt;','').gsub('&gt;','').sub(':', '_')</span>
582
- <span class="ruby-keyword kw">end</span>
583
- <span class="ruby-keyword kw">end</span>
584
- </pre>
585
- </div>
586
- </div>
587
- </div>
588
- <div class="method">
589
- <div class="title">
590
- <a name="M000184"></a><b>by_name</b>(name)
591
- </div>
592
- <div class="description">
593
- <p>
594
- <em>Note: the following documentation uses &quot;class&quot; because
595
- it&#8217;s more common, but it applies to modules as well.</em>
596
- </p>
597
- <p>
598
- Given the <em>name</em> of a class, returns the class itself (i.e. instance
599
- of <a href="Class.html">Class</a>). The dereferencing starts at <a
600
- href="Object.html">Object</a>. That is,
601
- </p>
602
- <pre>
603
- Class.by_name(&quot;String&quot;)
604
- </pre>
605
- <p>
606
- is equivalent to
607
- </p>
608
- <pre>
609
- Object.const_get(&quot;String&quot;)
610
- </pre>
611
- <p>
612
- The parameter <em>name</em> is expected to be a <a
613
- href="Symbol.html">Symbol</a> or <a href="String.html">String</a>, or at
614
- least to respond to <tt>to_str</tt>.
615
- </p>
616
- <p>
617
- An ArgumentError is raised if <em>name</em> does not correspond to an
618
- existing class. If <em>name</em> is not even a valid class name, the error
619
- you&#8217;ll get is not defined.
620
- </p>
621
- <p>
622
- Examples:
623
- </p>
624
- <pre>
625
- Class.by_name(&quot;String&quot;) # -&gt; String
626
- Class.by_name(&quot;::String&quot;) # -&gt; String
627
- Class.by_name(&quot;Process::Sys&quot;) # -&gt; Process::Sys
628
- Class.by_name(&quot;GorillaZ&quot;) # -&gt; (ArgumentError)
629
-
630
- Class.by_name(&quot;Enumerable&quot;) # -&gt; Enumerable
631
- Module.by_name(&quot;Enumerable&quot;) # -&gt; Enumerable
632
- </pre>
633
- </div>
634
- <div class="sourcecode">
635
- <p class="source-link">[ <a href="javascript:toggleSource('M000184_source')" id="l_M000184_source">show source</a> ]</p>
636
- <div id="M000184_source" class="dyn-source">
637
- <pre>
638
- <span class="ruby-comment cmt"># File lib/facets/core/module/by_name.rb, line 37</span>
639
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">by_name</span>(<span class="ruby-identifier">name</span>)
640
- <span class="ruby-identifier">result</span> = <span class="ruby-constant">Object</span>.<span class="ruby-identifier">constant</span>(<span class="ruby-identifier">name</span>)
641
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">result</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">kind_of?</span>( <span class="ruby-constant">Module</span> )
642
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;#{name} is not a module or class&quot;</span>
643
- <span class="ruby-keyword kw">end</span>
644
- </pre>
645
- </div>
646
- </div>
647
- </div>
648
- <div class="method">
649
- <div class="title">
650
- <a name="M000182"></a><b>clone_removing</b>( *meths )
651
- </div>
652
- <div class="description">
653
- <p>
654
- Returns an anonymous module with the specified methods of the receiving
655
- module removed.
656
- </p>
657
- </div>
658
- <div class="sourcecode">
659
- <p class="source-link">[ <a href="javascript:toggleSource('M000182_source')" id="l_M000182_source">show source</a> ]</p>
660
- <div id="M000182_source" class="dyn-source">
661
- <pre>
662
- <span class="ruby-comment cmt"># File lib/facets/core/module/clone_using.rb, line 19</span>
663
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clone_removing</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">meths</span> )
664
- <span class="ruby-identifier">mod</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>
665
- <span class="ruby-identifier">methods_to_remove</span> = <span class="ruby-identifier">meths</span>
666
- <span class="ruby-identifier">methods_to_remove</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">class_eval</span> { <span class="ruby-identifier">remove_method</span> <span class="ruby-identifier">m</span> } }
667
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">mod</span>
668
- <span class="ruby-keyword kw">end</span>
669
- </pre>
670
- </div>
671
- </div>
672
- </div>
673
- <div class="method">
674
- <div class="title">
675
- <a name="M000181"></a><b>clone_renaming</b>( pairs )
676
- </div>
677
- <div class="description">
678
- <p>
679
- Returns an anonymous module with the specified methods of the receiving
680
- module renamed.
681
- </p>
682
- </div>
683
- <div class="sourcecode">
684
- <p class="source-link">[ <a href="javascript:toggleSource('M000181_source')" id="l_M000181_source">show source</a> ]</p>
685
- <div id="M000181_source" class="dyn-source">
686
- <pre>
687
- <span class="ruby-comment cmt"># File lib/facets/core/module/clone_using.rb, line 6</span>
688
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clone_renaming</span>( <span class="ruby-identifier">pairs</span> )
689
- <span class="ruby-identifier">mod</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>
690
- <span class="ruby-identifier">pairs</span>.<span class="ruby-identifier">each_pair</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">from_sym</span><span class="ruby-operator">|</span>
691
- <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">class_eval</span> {
692
- <span class="ruby-identifier">alias_method</span>( <span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">from_sym</span> )
693
- <span class="ruby-identifier">undef_method</span>( <span class="ruby-identifier">from_sym</span> )
694
- }
695
- }
696
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">mod</span>
697
- <span class="ruby-keyword kw">end</span>
698
- </pre>
699
- </div>
700
- </div>
701
- </div>
702
- <div class="method">
703
- <div class="title">
704
- <a name="M000183"></a><b>clone_using</b>( *meths )
705
- </div>
706
- <div class="description">
707
- <p>
708
- Returns an anonymous module with only the specified methods of the
709
- receiving module intact.
710
- </p>
711
- </div>
712
- <div class="sourcecode">
713
- <p class="source-link">[ <a href="javascript:toggleSource('M000183_source')" id="l_M000183_source">show source</a> ]</p>
714
- <div id="M000183_source" class="dyn-source">
715
- <pre>
716
- <span class="ruby-comment cmt"># File lib/facets/core/module/clone_using.rb, line 28</span>
717
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clone_using</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">meths</span> )
718
- <span class="ruby-identifier">meths</span> = <span class="ruby-identifier">meths</span>.<span class="ruby-identifier">collect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">m</span>.<span class="ruby-identifier">to_s</span> }
719
- <span class="ruby-identifier">methods_to_remove</span> = (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">instance_methods</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">meths</span>)
720
- <span class="ruby-identifier">mod</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">dup</span>
721
- <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">class_eval</span> { <span class="ruby-identifier">methods_to_remove</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">undef_method</span> <span class="ruby-identifier">m</span> } }
722
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">mod</span>
723
- <span class="ruby-keyword kw">end</span>
724
- </pre>
725
- </div>
726
- </div>
727
- </div>
728
- <div class="method">
729
- <div class="title">
730
- <a name="M000176"></a><b>compare_on</b>(*fields)
731
- </div>
732
- <div class="description">
733
- <p>
734
- Alias for <a href="Module.html#M000175">sort_on</a>
735
- </p>
736
- </div>
737
- </div>
738
- <div class="method">
739
- <div class="title">
740
- <a name="M000173"></a><b>dirname</b>()
741
- </div>
742
- <div class="description">
743
- <p>
744
- Returns the name of module&#8217;s container module.
745
- </p>
746
- <pre>
747
- module Example
748
- class Demo
749
- end
750
- end
751
-
752
- Demo.name #=&gt; &quot;Example::Demo&quot;
753
- Demo.dirname #=&gt; &quot;Example&quot;
754
- </pre>
755
- <p>
756
- See also <a href="Module.html#M000158">Module#basename</a>.
757
- </p>
758
- </div>
759
- <div class="sourcecode">
760
- <p class="source-link">[ <a href="javascript:toggleSource('M000173_source')" id="l_M000173_source">show source</a> ]</p>
761
- <div id="M000173_source" class="dyn-source">
762
- <pre>
763
- <span class="ruby-comment cmt"># File lib/facets/core/module/dirname.rb, line 15</span>
764
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dirname</span>
765
- <span class="ruby-identifier">name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/::[^:]*$/</span>, <span class="ruby-value str">''</span>)
766
- <span class="ruby-keyword kw">end</span>
767
- </pre>
768
- </div>
769
- </div>
770
- </div>
771
- <div class="method">
772
- <div class="title">
773
- <a name="M000178"></a><b>equate_on</b>(*fields)
774
- </div>
775
- <div class="description">
776
- <p>
777
- Generates identity/key methods based on specified attributes.
778
- </p>
779
- <pre>
780
- equate_on :a, :b
781
- </pre>
782
- <p>
783
- _is equivalent to_
784
- </p>
785
- <pre>
786
- def ==(o)
787
- self.a == o.a &amp;&amp; self.b == o.b
788
- end
789
-
790
- def eql?(o)
791
- self.a.eql?(o.a) &amp;&amp; self.b.eql?(o.b)
792
- end
793
-
794
- def hash()
795
- self.a.hash ^ self.b.hash
796
- end
797
- </pre>
798
- </div>
799
- <div class="aka">
800
- This method is also aliased as
801
- <a href="Module.html#M000179">key_attributes</a>
802
- </div>
803
- <div class="sourcecode">
804
- <p class="source-link">[ <a href="javascript:toggleSource('M000178_source')" id="l_M000178_source">show source</a> ]</p>
805
- <div id="M000178_source" class="dyn-source">
806
- <pre>
807
- <span class="ruby-comment cmt"># File lib/facets/core/module/equate_on.rb, line 25</span>
808
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">equate_on</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">fields</span>)
809
- <span class="ruby-identifier">code</span> = <span class="ruby-value str">&quot;&quot;</span>
810
- <span class="ruby-identifier">code</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;def ==(o) &quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">fields</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-node">&quot;self.#{f} == o.#{f}&quot;</span> }.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; &amp;&amp; &quot;</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; end\n&quot;</span>
811
- <span class="ruby-identifier">code</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;def eql?(o) &quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">fields</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-node">&quot;self.#{f}.eql?(o.#{f})&quot;</span> }.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; &amp;&amp; &quot;</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; end\n&quot;</span>
812
- <span class="ruby-identifier">code</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;def hash() &quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">fields</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-node">&quot;self.#{f}.hash&quot;</span> }.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; ^ &quot;</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; end\n&quot;</span>
813
- <span class="ruby-identifier">class_eval</span>( <span class="ruby-identifier">code</span> )
814
- <span class="ruby-identifier">fields</span>
815
- <span class="ruby-keyword kw">end</span>
816
- </pre>
817
- </div>
818
- </div>
819
- </div>
820
- <div class="method">
821
- <div class="title">
822
- <a name="M000159"></a><b>generate_instance_method_name</b>( name='a' )
823
- </div>
824
- <div class="description">
825
- <p>
826
- Generates a new symbol that is unique among the inctance methods of the
827
- class/module. If a name argument is given, it will generate a similar name.
828
- </p>
829
- <pre>
830
- Class.generate_instance_method_name( :class ) =&gt; :_clast_
831
- </pre>
832
- </div>
833
- <div class="sourcecode">
834
- <p class="source-link">[ <a href="javascript:toggleSource('M000159_source')" id="l_M000159_source">show source</a> ]</p>
835
- <div id="M000159_source" class="dyn-source">
836
- <pre>
837
- <span class="ruby-comment cmt"># File lib/facets/core/module/generate_instance_method_name.rb, line 10</span>
838
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generate_instance_method_name</span>( <span class="ruby-identifier">name</span>=<span class="ruby-value str">'a'</span> )
839
- <span class="ruby-identifier">s</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>
840
- <span class="ruby-keyword kw">while</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">method_defined?</span>( <span class="ruby-node">&quot;_#{s}_&quot;</span> )
841
- <span class="ruby-identifier">s</span> = <span class="ruby-identifier">s</span>.<span class="ruby-identifier">succ</span>
842
- <span class="ruby-keyword kw">end</span>
843
- <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;_#{s}_&quot;</span>.<span class="ruby-identifier">to_sym</span>
844
- <span class="ruby-keyword kw">end</span>
845
- </pre>
846
- </div>
847
- </div>
848
- </div>
849
- <div class="method">
850
- <div class="title">
851
- <a name="M000169"></a><b>include_as</b>( h )
852
- </div>
853
- <div class="description">
854
- <p>
855
- Include a module via a specified namespace.
856
- </p>
857
- <pre>
858
- module T
859
- def t ; &quot;HERE&quot; ; end
860
- end
861
-
862
- class X
863
- include_as :test =&gt; T
864
- def t ; test.t ; end
865
- end
866
-
867
- X.new.t #=&gt; &quot;HERE&quot;
868
- </pre>
869
- </div>
870
- <div class="sourcecode">
871
- <p class="source-link">[ <a href="javascript:toggleSource('M000169_source')" id="l_M000169_source">show source</a> ]</p>
872
- <div id="M000169_source" class="dyn-source">
873
- <pre>
874
- <span class="ruby-comment cmt"># File lib/facets/core/module/include_as.rb, line 19</span>
875
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">include_as</span>( <span class="ruby-identifier">h</span> )
876
- <span class="ruby-identifier">h</span>.<span class="ruby-identifier">each</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">mod</span><span class="ruby-operator">|</span>
877
- <span class="ruby-identifier">s</span> = <span class="ruby-keyword kw">self</span>
878
- <span class="ruby-identifier">c</span> = <span class="ruby-constant">Class</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">SimpleDelegator</span>) {
879
- <span class="ruby-identifier">include</span> <span class="ruby-identifier">mod</span>
880
- <span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">:initialize</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">s</span>) }
881
- }
882
- <span class="ruby-identifier">class_eval</span> {
883
- <span class="ruby-identifier">define_method</span>( <span class="ruby-identifier">name</span> ) {
884
- <span class="ruby-identifier">instance_variable_set</span>( <span class="ruby-node">&quot;@#{name}&quot;</span>, <span class="ruby-identifier">instance_variable_get</span>( <span class="ruby-node">&quot;@#{name}&quot;</span> ) <span class="ruby-operator">||</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">s</span>) )
885
- }
886
- }
887
- }
888
- <span class="ruby-keyword kw">end</span>
889
- </pre>
890
- </div>
891
- </div>
892
- </div>
893
- <div class="method">
894
- <div class="title">
895
- <a name="M000151"></a><b>initializer</b>(*attributes, &amp;block)
896
- </div>
897
- <div class="description">
898
- <p>
899
- Automatically create an initializer assigning the given arguments.
900
- </p>
901
- <pre>
902
- class MyClass
903
- initializer(:a, &quot;b&quot;, :c)
904
- end
905
- </pre>
906
- <p>
907
- _is equivalent to_
908
- </p>
909
- <pre>
910
- class MyClass
911
- def initialize(a, b, c)
912
- @a,@b,@c = a,b,c
913
- end
914
- end
915
- </pre>
916
- <p>
917
- Downside: Initializers defined like this can&#8217;t take blocks. This can
918
- be fixed when Ruby 1.9 is out.
919
- </p>
920
- <p>
921
- The initializer will not raise an Exception when the user does not supply a
922
- value for each instance variable. In that case it will just set the
923
- instance variable to nil. You can assign default values or raise an
924
- Exception in the block.
925
- </p>
926
- </div>
927
- <div class="sourcecode">
928
- <p class="source-link">[ <a href="javascript:toggleSource('M000151_source')" id="l_M000151_source">show source</a> ]</p>
929
- <div id="M000151_source" class="dyn-source">
930
- <pre>
931
- <span class="ruby-comment cmt"># File lib/facets/core/module/initializer.rb, line 27</span>
932
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initializer</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">attributes</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
933
- <span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">:initialize</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-operator">*</span><span class="ruby-identifier">args</span><span class="ruby-operator">|</span>
934
- <span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">zip</span>(<span class="ruby-identifier">args</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sym</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
935
- <span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-node">&quot;@#{sym}&quot;</span>, <span class="ruby-identifier">value</span>)
936
- <span class="ruby-keyword kw">end</span>
937
-
938
- <span class="ruby-identifier">instance_eval</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block</span>
939
- <span class="ruby-keyword kw">end</span>
940
- <span class="ruby-keyword kw">end</span>
941
- </pre>
942
- </div>
943
- </div>
944
- </div>
945
- <div class="method">
946
- <div class="title">
947
- <a name="M000148"></a><b>instance_method!</b>(s)
948
- </div>
949
- <div class="description">
950
- <p>
951
- Easy access to method as objects, and they retain state!
952
- </p>
953
- <pre>
954
- module K
955
- def hello
956
- puts &quot;Hello World!&quot;
957
- end
958
- end
959
- p K.instance_method!(:hello) #=&gt; &lt;UnboundMethod: #hello&gt;
960
- </pre>
961
- <p>
962
- CAUTION! This will not work exactly right until class variable lookup is
963
- fixed. Presently it is limited to the scope of the current module/class.
964
- </p>
965
- </div>
966
- <div class="sourcecode">
967
- <p class="source-link">[ <a href="javascript:toggleSource('M000148_source')" id="l_M000148_source">show source</a> ]</p>
968
- <div id="M000148_source" class="dyn-source">
969
- <pre>
970
- <span class="ruby-comment cmt"># File lib/facets/core/kernel/method.rb, line 61</span>
971
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">instance_method!</span>(<span class="ruby-identifier">s</span>)
972
- <span class="ruby-comment cmt">#( @@__instance_methods__ ||= {} )[s] ||= instance_method(s) # TODO when fixed</span>
973
- ( <span class="ruby-ivar">@__instance_methods__</span> <span class="ruby-operator">||=</span> {} )[<span class="ruby-identifier">s</span>] <span class="ruby-operator">||=</span> <span class="ruby-identifier">instance_method</span>(<span class="ruby-identifier">s</span>)
974
- <span class="ruby-keyword kw">end</span>
975
- </pre>
976
- </div>
977
- </div>
978
- </div>
979
- <div class="method">
980
- <div class="title">
981
- <a name="M000155"></a><b>instance_methods</b>(*args)
982
- </div>
983
- <div class="description">
984
- <p>
985
- Provides an improved method lookup routnine. It returns a list of methods
986
- according to symbol(s) given.
987
- </p>
988
- <p>
989
- Recognized symbols are:
990
- </p>
991
- <ul>
992
- <li><tt>:public</tt> include public methods
993
-
994
- </li>
995
- <li><tt>:private</tt> include private methods
996
-
997
- </li>
998
- <li><tt>:protected</tt> include protected methods
999
-
1000
- </li>
1001
- <li><tt>:ancestors</tt> include all ancestor&#8217;s methods
1002
-
1003
- </li>
1004
- <li><tt>:inherited</tt> (same as above)
1005
-
1006
- </li>
1007
- <li>&lt;tt&gt;:local&lt;/tti&gt; include non-ancestor methods
1008
-
1009
- </li>
1010
- <li><tt>:all</tt> include all of the above
1011
-
1012
- </li>
1013
- </ul>
1014
- <p>
1015
- This method also uses the symbol-not system. So you can specify the inverse
1016
- of all of the above. For instance ~:public would mean :private, :protected
1017
- (see facet/symbol/not).
1018
- </p>
1019
- <p>
1020
- If no symbol is given then :public, :local is assumed. Unrecognized symbols
1021
- raise an error.
1022
- </p>
1023
- <pre>
1024
- module Demo
1025
- def test
1026
- puts(&quot;Hello World!&quot;)
1027
- end
1028
- end
1029
-
1030
- Demo.instance_methods(:local) #=&gt; ['test']
1031
- </pre>
1032
- <p>
1033
- To maintain backward compatibility <tt>true</tt> as an intitial argument is
1034
- converted to :local, :ancestors (i.e. it includes both).
1035
- </p>
1036
- </div>
1037
- <div class="sourcecode">
1038
- <p class="source-link">[ <a href="javascript:toggleSource('M000155_source')" id="l_M000155_source">show source</a> ]</p>
1039
- <div id="M000155_source" class="dyn-source">
1040
- <pre>
1041
- <span class="ruby-comment cmt"># File lib/facets/core/module/instance_methods.rb, line 40</span>
1042
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">instance_methods</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
1043
-
1044
- <span class="ruby-comment cmt"># for backward compatibility</span>
1045
- <span class="ruby-identifier">args</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">empty?</span>
1046
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>]
1047
- <span class="ruby-keyword kw">when</span> <span class="ruby-constant">TrueClass</span>
1048
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">shift</span>
1049
- <span class="ruby-identifier">args</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">:ancestors</span>
1050
- <span class="ruby-identifier">args</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">:local</span>
1051
- <span class="ruby-keyword kw">when</span> <span class="ruby-constant">FalseClass</span>
1052
- <span class="ruby-identifier">args</span>.<span class="ruby-identifier">shift</span>
1053
- <span class="ruby-identifier">args</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">:local</span>
1054
- <span class="ruby-keyword kw">end</span>
1055
-
1056
- <span class="ruby-comment cmt"># default public, local</span>
1057
- <span class="ruby-identifier">args</span> <span class="ruby-operator">|=</span> [<span class="ruby-identifier">:public</span>] <span class="ruby-keyword kw">unless</span> [<span class="ruby-identifier">:publix</span>,<span class="ruby-identifier">:private</span>,<span class="ruby-identifier">:protected</span>,<span class="ruby-identifier">:all</span>].<span class="ruby-identifier">any?</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">a</span>) }
1058
- <span class="ruby-identifier">args</span> <span class="ruby-operator">|=</span> [<span class="ruby-identifier">:ancestors</span>,<span class="ruby-identifier">:local</span>] <span class="ruby-keyword kw">unless</span> [<span class="ruby-identifier">:ancestors</span>,<span class="ruby-identifier">:inherited</span>,<span class="ruby-identifier">:local</span>,<span class="ruby-identifier">:all</span>].<span class="ruby-identifier">any?</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">a</span>) }
1059
-
1060
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">any?</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> <span class="ruby-operator">!</span> <span class="ruby-constant">METHOD_TYPES</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">a</span>) }
1061
-
1062
- <span class="ruby-identifier">pos</span>, <span class="ruby-identifier">neg</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">partition</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">not?</span> }
1063
-
1064
- <span class="ruby-identifier">m</span> = []
1065
-
1066
- <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">n</span><span class="ruby-operator">|</span>
1067
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">n</span>
1068
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:inherited</span>, <span class="ruby-identifier">:ancestors</span>
1069
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> ( <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">true</span> ) <span class="ruby-operator">-</span> <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">:public</span>)
1070
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> ( <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">true</span> ) <span class="ruby-operator">-</span> <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">:private</span>)
1071
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> ( <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">true</span> ) <span class="ruby-operator">-</span> <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">:protected</span>)
1072
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:local</span>
1073
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">:public</span>)
1074
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">:private</span>)
1075
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pos</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">:protected</span>)
1076
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:all</span>
1077
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">true</span> )
1078
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">true</span> )
1079
- <span class="ruby-identifier">m</span> <span class="ruby-operator">|=</span> <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">true</span> )
1080
- <span class="ruby-keyword kw">end</span>
1081
- <span class="ruby-keyword kw">end</span>
1082
-
1083
- <span class="ruby-identifier">neg</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">n</span><span class="ruby-operator">|</span>
1084
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">n</span>
1085
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:public</span>
1086
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">true</span> )
1087
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:private</span>
1088
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">true</span> )
1089
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:protected</span>
1090
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">true</span> )
1091
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:inherited</span>, <span class="ruby-identifier">:ancestors</span>
1092
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> ( <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">true</span> ) <span class="ruby-operator">-</span> <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) )
1093
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> ( <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">true</span> ) <span class="ruby-operator">-</span> <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) )
1094
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> ( <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">true</span> ) <span class="ruby-operator">-</span> <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">false</span> ) )
1095
- <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:local</span>
1096
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">public_instance_methods</span>( <span class="ruby-keyword kw">false</span> )
1097
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">private_instance_methods</span>( <span class="ruby-keyword kw">false</span> )
1098
- <span class="ruby-identifier">m</span> <span class="ruby-operator">-=</span> <span class="ruby-identifier">protected_instance_methods</span>( <span class="ruby-keyword kw">false</span> )
1099
- <span class="ruby-keyword kw">end</span>
1100
- <span class="ruby-keyword kw">end</span>
1101
-
1102
- <span class="ruby-identifier">m</span>.<span class="ruby-identifier">sort</span>
1103
- <span class="ruby-keyword kw">end</span>
1104
- </pre>
1105
- </div>
1106
- </div>
1107
- </div>
1108
- <div class="method">
1109
- <div class="title">
1110
- <a name="M000157"></a><b>integrate</b>( mod, &amp;block )
1111
- </div>
1112
- <div class="sourcecode">
1113
- <p class="source-link">[ <a href="javascript:toggleSource('M000157_source')" id="l_M000157_source">show source</a> ]</p>
1114
- <div id="M000157_source" class="dyn-source">
1115
- <pre>
1116
- <span class="ruby-comment cmt"># File lib/facets/core/module/integrate.rb, line 39</span>
1117
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">integrate</span>( <span class="ruby-identifier">mod</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span> )
1118
- <span class="ruby-comment cmt">#include mod.revisal( &amp;blk )</span>
1119
- <span class="ruby-identifier">m</span> = <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">include</span> <span class="ruby-identifier">mod</span> }
1120
- <span class="ruby-identifier">m</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>
1121
- <span class="ruby-identifier">include</span> <span class="ruby-identifier">m</span>
1122
- <span class="ruby-keyword kw">end</span>
1123
- </pre>
1124
- </div>
1125
- </div>
1126
- </div>
1127
- <div class="method">
1128
- <div class="title">
1129
- <a name="M000153"></a><b>is?</b>( base )
1130
- </div>
1131
- <div class="description">
1132
- <p>
1133
- Is a given class or module an ancestor of this class or module?
1134
- </p>
1135
- <pre>
1136
- class X ; end
1137
- class Y &lt; X ; end
1138
-
1139
- Y.is?(X) #=&gt; true
1140
- </pre>
1141
- </div>
1142
- <div class="sourcecode">
1143
- <p class="source-link">[ <a href="javascript:toggleSource('M000153_source')" id="l_M000153_source">show source</a> ]</p>
1144
- <div id="M000153_source" class="dyn-source">
1145
- <pre>
1146
- <span class="ruby-comment cmt"># File lib/facets/core/module/is.rb, line 22</span>
1147
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is?</span>( <span class="ruby-identifier">base</span> )
1148
- <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>).<span class="ruby-identifier">include?</span>( <span class="ruby-identifier">base</span> )
1149
- <span class="ruby-keyword kw">end</span>
1150
- </pre>
1151
- </div>
1152
- </div>
1153
- </div>
1154
- <div class="method">
1155
- <div class="title">
1156
- <a name="M000179"></a><b>key_attributes</b>(*fields)
1157
- </div>
1158
- <div class="description">
1159
- <p>
1160
- Alias for <a href="Module.html#M000178">equate_on</a>
1161
- </p>
1162
- </div>
1163
- </div>
1164
- <div class="method">
1165
- <div class="title">
1166
- <a name="M000185"></a><b>memoize</b>(*meths)
1167
- </div>
1168
- <div class="description">
1169
- <p>
1170
- Directive for making your functions faster by trading space for time. When
1171
- you &quot;memoize&quot; a method/function its results are cached so that
1172
- later calls with the same arguments returns results in the cache instead of
1173
- recalculating them.
1174
- </p>
1175
- <pre>
1176
- class T
1177
- def initialize(a)
1178
- @a = a
1179
- end
1180
- def a
1181
- &quot;#{@a ^ 3 + 4}&quot;
1182
- end
1183
- memoize :a
1184
- end
1185
-
1186
- t = T.new
1187
- t.a.__id__ == t.a.__id__ #=&gt; true
1188
- </pre>
1189
- </div>
1190
- <div class="sourcecode">
1191
- <p class="source-link">[ <a href="javascript:toggleSource('M000185_source')" id="l_M000185_source">show source</a> ]</p>
1192
- <div id="M000185_source" class="dyn-source">
1193
- <pre>
1194
- <span class="ruby-comment cmt"># File lib/facets/core/module/memoize.rb, line 26</span>
1195
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">memoize</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">meths</span>)
1196
- <span class="ruby-ivar">@_MEMOIZE_CACHE</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
1197
- <span class="ruby-identifier">meths</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
1198
- <span class="ruby-identifier">mc</span> = <span class="ruby-ivar">@_MEMOIZE_CACHE</span>[<span class="ruby-identifier">meth</span>] = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
1199
- <span class="ruby-identifier">old</span> = <span class="ruby-identifier">instance_method</span>(<span class="ruby-identifier">meth</span>)
1200
- <span class="ruby-identifier">new</span> = <span class="ruby-identifier">proc</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-operator">*</span><span class="ruby-identifier">args</span><span class="ruby-operator">|</span>
1201
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">mc</span>.<span class="ruby-identifier">has_key?</span> <span class="ruby-identifier">args</span>
1202
- <span class="ruby-identifier">mc</span>[<span class="ruby-identifier">args</span>]
1203
- <span class="ruby-keyword kw">else</span>
1204
- <span class="ruby-identifier">mc</span>[<span class="ruby-identifier">args</span>] = <span class="ruby-identifier">old</span>.<span class="ruby-identifier">bind</span>(<span class="ruby-keyword kw">self</span>).<span class="ruby-identifier">call</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
1205
- <span class="ruby-keyword kw">end</span>
1206
- <span class="ruby-keyword kw">end</span>
1207
- <span class="ruby-identifier">send</span>(<span class="ruby-identifier">:define_method</span>, <span class="ruby-identifier">meth</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">new</span>)
1208
- <span class="ruby-keyword kw">end</span>
1209
- <span class="ruby-keyword kw">end</span>
1210
- </pre>
1211
- </div>
1212
- </div>
1213
- </div>
1214
- <div class="method">
1215
- <div class="title">
1216
- <a name="M000154"></a><b>modspace</b>()
1217
- </div>
1218
- <div class="description">
1219
- <p>
1220
- Returns the module&#8217;s container module.
1221
- </p>
1222
- <pre>
1223
- module Example
1224
- class Demo
1225
- end
1226
- end
1227
-
1228
- Demo.modspace #=&gt; Example
1229
- </pre>
1230
- <p>
1231
- See also <a href="Module.html#M000158">Module#basename</a>.
1232
- </p>
1233
- </div>
1234
- <div class="sourcecode">
1235
- <p class="source-link">[ <a href="javascript:toggleSource('M000154_source')" id="l_M000154_source">show source</a> ]</p>
1236
- <div id="M000154_source" class="dyn-source">
1237
- <pre>
1238
- <span class="ruby-comment cmt"># File lib/facets/core/module/modspace.rb, line 17</span>
1239
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">modspace</span>
1240
- <span class="ruby-identifier">eval</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">name</span>[ <span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">rindex</span>( <span class="ruby-value str">'::'</span> ) ]
1241
- <span class="ruby-keyword kw">end</span>
1242
- </pre>
1243
- </div>
1244
- </div>
1245
- </div>
1246
- <div class="method">
1247
- <div class="title">
1248
- <a name="M000163"></a><b>namespace</b>( name, &amp;blk )
1249
- </div>
1250
- <div class="description">
1251
- <p>
1252
- Create a seperated method namespace.
1253
- </p>
1254
- <pre>
1255
- module T
1256
- def t ; &quot;HERE&quot; ; end
1257
- end
1258
-
1259
- class X
1260
- namespace :test { include T }
1261
- def t ; test.t ; end
1262
- end
1263
-
1264
- X.new.t #=&gt; &quot;HERE&quot;
1265
- </pre>
1266
- <p>
1267
- NOTE: This is not as functional as it ought be in that the instance
1268
- variables of the object are not accessible within the namespace.
1269
- </p>
1270
- </div>
1271
- <div class="sourcecode">
1272
- <p class="source-link">[ <a href="javascript:toggleSource('M000163_source')" id="l_M000163_source">show source</a> ]</p>
1273
- <div id="M000163_source" class="dyn-source">
1274
- <pre>
1275
- <span class="ruby-comment cmt"># File lib/facets/core/module/namespace.rb, line 22</span>
1276
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">namespace</span>( <span class="ruby-identifier">name</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> )
1277
- <span class="ruby-identifier">s</span> = <span class="ruby-keyword kw">self</span>
1278
- <span class="ruby-identifier">c</span> = <span class="ruby-constant">Class</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">SimpleDelegator</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span>)
1279
- <span class="ruby-identifier">c</span>.<span class="ruby-identifier">class_eval</span> { <span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">:initialize</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">s</span>) } }
1280
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class_eval</span> {
1281
- <span class="ruby-identifier">define_method</span>( <span class="ruby-identifier">name</span> ) {
1282
- <span class="ruby-identifier">instance_variable_set</span>( <span class="ruby-node">&quot;@#{name}&quot;</span>, <span class="ruby-identifier">instance_variable_get</span>( <span class="ruby-node">&quot;@#{name}&quot;</span> ) <span class="ruby-operator">||</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">s</span>) )
1283
- }
1284
- }
1285
- <span class="ruby-keyword kw">end</span>
1286
- </pre>
1287
- </div>
1288
- </div>
1289
- </div>
1290
- <div class="method">
1291
- <div class="title">
1292
- <a name="M000166"></a><b>nesting</b>()
1293
- </div>
1294
- <div class="sourcecode">
1295
- <p class="source-link">[ <a href="javascript:toggleSource('M000166_source')" id="l_M000166_source">show source</a> ]</p>
1296
- <div id="M000166_source" class="dyn-source">
1297
- <pre>
1298
- <span class="ruby-comment cmt"># File lib/facets/core/module/nesting.rb, line 8</span>
1299
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">nesting</span>
1300
- <span class="ruby-identifier">n</span> = []
1301
- <span class="ruby-identifier">name</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/::/</span>).<span class="ruby-identifier">inject</span>(<span class="ruby-keyword kw">self</span>){ <span class="ruby-operator">|</span><span class="ruby-identifier">mod</span>, <span class="ruby-identifier">name</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span> = <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">name</span>) ; <span class="ruby-identifier">n</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">c</span> ; <span class="ruby-identifier">c</span> }
1302
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">n</span>
1303
- <span class="ruby-keyword kw">end</span>
1304
- </pre>
1305
- </div>
1306
- </div>
1307
- </div>
1308
- <div class="method">
1309
- <div class="title">
1310
- <a name="M000188"></a><b>on_included</b>(code)
1311
- </div>
1312
- <div class="description">
1313
- <p>
1314
- A useful macro for dynamic modules.
1315
- </p>
1316
- </div>
1317
- <div class="sourcecode">
1318
- <p class="source-link">[ <a href="javascript:toggleSource('M000188_source')" id="l_M000188_source">show source</a> ]</p>
1319
- <div id="M000188_source" class="dyn-source">
1320
- <pre>
1321
- <span class="ruby-comment cmt"># File lib/facets/core/module/on_included.rb, line 13</span>
1322
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">on_included</span>(<span class="ruby-identifier">code</span>)
1323
- <span class="ruby-identifier">tag</span> = <span class="ruby-identifier">caller</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">split</span>(<span class="ruby-value str">' '</span>).<span class="ruby-identifier">first</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/\/|\\/</span>).<span class="ruby-identifier">last</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/:|\.|\(|\)/</span>, <span class="ruby-value str">'_'</span>)
1324
- <span class="ruby-identifier">old</span> = <span class="ruby-node">&quot;__included_#{tag}&quot;</span>
1325
- <span class="ruby-identifier">module_eval</span> <span class="ruby-node">%{
1326
- class &lt;&lt; self
1327
- alias_method :#{old}, :included
1328
- def included(base)
1329
- #{old}(base)
1330
- #{code}
1331
- end
1332
- end
1333
- }</span>
1334
- <span class="ruby-keyword kw">end</span>
1335
- </pre>
1336
- </div>
1337
- </div>
1338
- </div>
1339
- <div class="method">
1340
- <div class="title">
1341
- <a name="M000150"></a><b>redirect_method</b>( method_hash )
1342
- </div>
1343
- <div class="description">
1344
- <p>
1345
- Redirect methods to other methods. This simply defines methods by the name
1346
- of a hash key which calls the method with the name of the hash&#8217;s
1347
- value.
1348
- </p>
1349
- <pre>
1350
- class Example
1351
- redirect_method :hi =&gt; :hello, :hey =&gt; :hello
1352
- def hello(name)
1353
- puts &quot;Hello, #{name}.&quot;
1354
- end
1355
- end
1356
-
1357
- e = Example.new
1358
- e.hello(&quot;Bob&quot;) #=&gt; &quot;Hello, Bob.&quot;
1359
- e.hi(&quot;Bob&quot;) #=&gt; &quot;Hello, Bob.&quot;
1360
- e.hey(&quot;Bob&quot;) #=&gt; &quot;Hello, Bob.&quot;
1361
- </pre>
1362
- <p>
1363
- The above class definition is equivalent to:
1364
- </p>
1365
- <pre>
1366
- class Example
1367
- def hi(*args)
1368
- hello(*args)
1369
- end
1370
- def hey(*args)
1371
- hello(*args)
1372
- end
1373
- def hello
1374
- puts &quot;Hello&quot;
1375
- end
1376
- end
1377
- </pre>
1378
- </div>
1379
- <div class="aka">
1380
- This method is also aliased as
1381
- <a href="Module.html#M000160">redirect</a>
1382
- </div>
1383
- <div class="sourcecode">
1384
- <p class="source-link">[ <a href="javascript:toggleSource('M000150_source')" id="l_M000150_source">show source</a> ]</p>
1385
- <div id="M000150_source" class="dyn-source">
1386
- <pre>
1387
- <span class="ruby-comment cmt"># File lib/facets/core/module/redirect_method.rb, line 33</span>
1388
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">redirect_method</span>( <span class="ruby-identifier">method_hash</span> )
1389
- <span class="ruby-identifier">method_hash</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">targ</span>,<span class="ruby-identifier">adv</span><span class="ruby-operator">|</span>
1390
- <span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">targ</span>) { <span class="ruby-operator">|</span><span class="ruby-operator">*</span><span class="ruby-identifier">args</span><span class="ruby-operator">|</span> <span class="ruby-identifier">send</span>(<span class="ruby-identifier">adv</span>,<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>) }
1391
- <span class="ruby-keyword kw">end</span>
1392
- <span class="ruby-keyword kw">end</span>
1393
- </pre>
1394
- </div>
1395
- </div>
1396
- </div>
1397
- <div class="method">
1398
- <div class="title">
1399
- <a name="M000187"></a><b>revisal</b>( &amp;blk )
1400
- </div>
1401
- <div class="sourcecode">
1402
- <p class="source-link">[ <a href="javascript:toggleSource('M000187_source')" id="l_M000187_source">show source</a> ]</p>
1403
- <div id="M000187_source" class="dyn-source">
1404
- <pre>
1405
- <span class="ruby-comment cmt"># File lib/facets/core/module/revisal.rb, line 10</span>
1406
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">revisal</span>( <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> )
1407
- <span class="ruby-identifier">base</span> = <span class="ruby-keyword kw">self</span>
1408
- <span class="ruby-identifier">nm</span> = <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">include</span> <span class="ruby-identifier">base</span> }
1409
- <span class="ruby-identifier">nm</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span>
1410
- <span class="ruby-identifier">nm</span>
1411
- <span class="ruby-keyword kw">end</span>
1412
- </pre>
1413
- </div>
1414
- </div>
1415
- </div>
1416
- <div class="method">
1417
- <div class="title">
1418
- <a name="M000152"></a><b>shadow_all</b>( include_ancestors=true )
1419
- </div>
1420
- <div class="description">
1421
- <p>
1422
- Creates a shadow method for every currently defined method.
1423
- </p>
1424
- </div>
1425
- <div class="sourcecode">
1426
- <p class="source-link">[ <a href="javascript:toggleSource('M000152_source')" id="l_M000152_source">show source</a> ]</p>
1427
- <div id="M000152_source" class="dyn-source">
1428
- <pre>
1429
- <span class="ruby-comment cmt"># File lib/facets/core/module/shadow_all.rb, line 5</span>
1430
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shadow_all</span>( <span class="ruby-identifier">include_ancestors</span>=<span class="ruby-keyword kw">true</span> )
1431
- <span class="ruby-identifier">instance_methods</span>(<span class="ruby-identifier">include_ancestors</span>).<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span> <span class="ruby-identifier">shadow_method</span>( <span class="ruby-identifier">m</span> ) }
1432
- <span class="ruby-keyword kw">end</span>
1433
- </pre>
1434
- </div>
1435
- </div>
1436
- </div>
1437
- <div class="method">
1438
- <div class="title">
1439
- <a name="M000161"></a><b>shadow_method</b>( name, old_name=name )
1440
- </div>
1441
- <div class="description">
1442
- <p>
1443
- Define a shadow alias for a method.
1444
- </p>
1445
- <pre>
1446
- class X
1447
- shadow_method( :class )
1448
- end
1449
-
1450
- X.new.__class__ #=&gt; X
1451
- </pre>
1452
- </div>
1453
- <div class="sourcecode">
1454
- <p class="source-link">[ <a href="javascript:toggleSource('M000161_source')" id="l_M000161_source">show source</a> ]</p>
1455
- <div id="M000161_source" class="dyn-source">
1456
- <pre>
1457
- <span class="ruby-comment cmt"># File lib/facets/core/module/shadow_method.rb, line 11</span>
1458
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shadow_method</span>( <span class="ruby-identifier">name</span>, <span class="ruby-identifier">old_name</span>=<span class="ruby-identifier">name</span> )
1459
- <span class="ruby-identifier">name</span>, <span class="ruby-identifier">old_name</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">old_name</span>.<span class="ruby-identifier">to_s</span>
1460
- <span class="ruby-identifier">shadow_name</span> = <span class="ruby-value str">'__'</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/([=?!])$/</span>, <span class="ruby-value str">''</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'__'</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_s</span>
1461
- <span class="ruby-identifier">alias_method</span>( <span class="ruby-identifier">shadow_name</span>, <span class="ruby-identifier">old_name</span> )
1462
- <span class="ruby-keyword kw">end</span>
1463
- </pre>
1464
- </div>
1465
- </div>
1466
- </div>
1467
- <div class="method">
1468
- <div class="title">
1469
- <a name="M000177"></a><b>sort_attributes</b>(*fields)
1470
- </div>
1471
- <div class="description">
1472
- <p>
1473
- Alias for <a href="Module.html#M000175">sort_on</a>
1474
- </p>
1475
- </div>
1476
- </div>
1477
- <div class="method">
1478
- <div class="title">
1479
- <a name="M000175"></a><b>sort_on</b>(*fields)
1480
- </div>
1481
- <div class="description">
1482
- <p>
1483
- Automatically generate sorting defintions base on attribute fields.
1484
- </p>
1485
- <pre>
1486
- sort_on :a, :b
1487
- </pre>
1488
- <p>
1489
- _is equivalent to_
1490
- </p>
1491
- <pre>
1492
- def &lt;=&gt;(o)
1493
- cmp = self.a &lt;=&gt; o.a; return cmp unless cmp == 0
1494
- cmp = self.b &lt;=&gt; o.b; return cmp unless cmp == 0
1495
- 0
1496
- end
1497
- </pre>
1498
- </div>
1499
- <div class="aka">
1500
- This method is also aliased as
1501
- <a href="Module.html#M000176">compare_on</a>
1502
- <a href="Module.html#M000177">sort_attributes</a>
1503
- </div>
1504
- <div class="sourcecode">
1505
- <p class="source-link">[ <a href="javascript:toggleSource('M000175_source')" id="l_M000175_source">show source</a> ]</p>
1506
- <div id="M000175_source" class="dyn-source">
1507
- <pre>
1508
- <span class="ruby-comment cmt"># File lib/facets/core/module/sort_on.rb, line 19</span>
1509
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sort_on</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">fields</span>)
1510
- <span class="ruby-identifier">code</span> = <span class="ruby-value str">%{def &lt;=&gt;(o)\n}</span>
1511
- <span class="ruby-identifier">fields</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
1512
- <span class="ruby-identifier">code</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">%{cmp = ( @#{f} &lt;=&gt; o.instance_variable_get('@#{f}') );
1513
- return cmp unless cmp == 0\n}</span>
1514
- }
1515
- <span class="ruby-identifier">code</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">%{0\nend; alias_method :cmp, :&lt;=&gt;;}</span>
1516
- <span class="ruby-identifier">class_eval</span>( <span class="ruby-identifier">code</span> )
1517
- <span class="ruby-identifier">fields</span>
1518
- <span class="ruby-keyword kw">end</span>
1519
- </pre>
1520
- </div>
1521
- </div>
1522
- </div>
1523
- <div class="method">
1524
- <div class="title">
1525
- <a name="M000165"></a><b>this</b>()
1526
- </div>
1527
- <div class="sourcecode">
1528
- <p class="source-link">[ <a href="javascript:toggleSource('M000165_source')" id="l_M000165_source">show source</a> ]</p>
1529
- <div id="M000165_source" class="dyn-source">
1530
- <pre>
1531
- <span class="ruby-comment cmt"># File lib/facets/core/module/this.rb, line 18</span>
1532
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">this</span>
1533
- <span class="ruby-identifier">klass</span> = <span class="ruby-keyword kw">self</span>
1534
- <span class="ruby-constant">Functor</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span><span class="ruby-operator">|</span>
1535
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">op</span>.<span class="ruby-identifier">to_s</span>[<span class="ruby-value">-1</span>,<span class="ruby-value">1</span>]
1536
- <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'='</span>
1537
- <span class="ruby-identifier">op</span> = <span class="ruby-identifier">op</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">chomp</span>(<span class="ruby-value str">'='</span>)
1538
- <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Proc</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>]
1539
- <span class="ruby-identifier">define_method</span>( <span class="ruby-identifier">op</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>] )
1540
- <span class="ruby-keyword kw">else</span>
1541
- <span class="ruby-identifier">define_method</span>( <span class="ruby-identifier">op</span> ) <span class="ruby-keyword kw">do</span>
1542
- <span class="ruby-identifier">r</span> = <span class="ruby-identifier">instance_variable_set</span>( <span class="ruby-node">&quot;@#{op}&quot;</span>, <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>] )
1543
- <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-node">%{
1544
- def #{op}; @#{op}; end
1545
- }</span>
1546
- <span class="ruby-identifier">r</span>
1547
- <span class="ruby-keyword kw">end</span>
1548
- <span class="ruby-keyword kw">end</span>
1549
- <span class="ruby-keyword kw">else</span>
1550
- <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-node">%{
1551
- def #{op}; @#{op}; end
1552
- }</span>
1553
- <span class="ruby-keyword kw">end</span>
1554
- <span class="ruby-keyword kw">end</span>
1555
- <span class="ruby-keyword kw">end</span>
1556
- </pre>
1557
- </div>
1558
- </div>
1559
- </div>
1560
- <div class="method">
1561
- <div class="title">
1562
- <a name="M000167"></a><b>wrap_method</b>( sym, &amp;blk )
1563
- </div>
1564
- <div class="description">
1565
- <p>
1566
- Creates a new method wrapping the previous of the same name. Reference to
1567
- the old method is passed into the new definition block as the first
1568
- parameter.
1569
- </p>
1570
- <pre>
1571
- wrap_method( sym ) { |old_meth, *args|
1572
- old_meth.call
1573
- ...
1574
- }
1575
- </pre>
1576
- <p>
1577
- Keep in mind that this can not be used to wrap methods that take a block.
1578
- </p>
1579
- </div>
1580
- <div class="aka">
1581
- This method is also aliased as
1582
- <a href="Module.html#M000186">wrap</a>
1583
- </div>
1584
- <div class="sourcecode">
1585
- <p class="source-link">[ <a href="javascript:toggleSource('M000167_source')" id="l_M000167_source">show source</a> ]</p>
1586
- <div id="M000167_source" class="dyn-source">
1587
- <pre>
1588
- <span class="ruby-comment cmt"># File lib/facets/core/module/wrap_method.rb, line 20</span>
1589
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">wrap_method</span>( <span class="ruby-identifier">sym</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> )
1590
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;method does not exist&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">method_defined?</span>( <span class="ruby-identifier">sym</span> )
1591
- <span class="ruby-identifier">old</span> = <span class="ruby-identifier">instance_method</span>(<span class="ruby-identifier">sym</span>)
1592
- <span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">sym</span>)
1593
- <span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">sym</span>) { <span class="ruby-operator">|</span><span class="ruby-operator">*</span><span class="ruby-identifier">args</span><span class="ruby-operator">|</span> <span class="ruby-identifier">blk</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">old</span>.<span class="ruby-identifier">bind</span>(<span class="ruby-keyword kw">self</span>), <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>) }
1594
- <span class="ruby-keyword kw">end</span>
1595
- </pre>
1596
- </div>
1597
- </div>
1598
- </div>
1599
- <div class="sectiontitle">Private Instance methods</div>
1600
- <div class="method">
1601
- <div class="title">
1602
- <a name="M000162"></a><b>alias_module_function</b>( new, old )
1603
- </div>
1604
- <div class="description">
1605
- <p>
1606
- Alias a module function so that the alias is also a module function. The
1607
- typical alias_method does not do this.
1608
- </p>
1609
- <pre>
1610
- module Demo
1611
- module_function
1612
- def hello
1613
- &quot;Hello&quot;
1614
- end
1615
- end
1616
-
1617
- Demo.hello #=&gt; Hello
1618
-
1619
- module Demo
1620
- alias_module_function( :hi , :hello )
1621
- end
1622
-
1623
- Demo.hi #=&gt; Hello
1624
- </pre>
1625
- </div>
1626
- <div class="sourcecode">
1627
- <p class="source-link">[ <a href="javascript:toggleSource('M000162_source')" id="l_M000162_source">show source</a> ]</p>
1628
- <div id="M000162_source" class="dyn-source">
1629
- <pre>
1630
- <span class="ruby-comment cmt"># File lib/facets/core/module/alias_module_function.rb, line 23</span>
1631
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">alias_module_function</span>( <span class="ruby-identifier">new</span>, <span class="ruby-identifier">old</span> )
1632
- <span class="ruby-identifier">alias_method</span>( <span class="ruby-identifier">new</span>, <span class="ruby-identifier">old</span> )
1633
- <span class="ruby-identifier">module_function</span>( <span class="ruby-identifier">new</span> )
1634
- <span class="ruby-keyword kw">end</span>
1635
- </pre>
1636
- </div>
1637
- </div>
1638
- </div>
1639
- <div class="method">
1640
- <div class="title">
1641
- <a name="M000191"></a><b>class_extension</b>(&amp;block)
1642
- </div>
1643
- <div class="description">
1644
- <h1><a href="Module.html#M000191">class_extension</a></h1>
1645
- <p>
1646
- Normally when including modules, class/module methods are not extended. To
1647
- achieve this behavior requires some clever Ruby Karate. Instead <a
1648
- href="Module.html#M000191">class_extension</a> provides an easy to use and
1649
- clean solution. Simply place the extending class methods in a block of the
1650
- special module method <a href="Module.html#M000191">class_extension</a>.
1651
- </p>
1652
- <pre>
1653
- module Mix
1654
- def inst_meth
1655
- puts 'inst_meth'
1656
- end
1657
-
1658
- class_methods do
1659
- def class_meth
1660
- &quot;Class Method!&quot;
1661
- end
1662
- end
1663
- end
1664
-
1665
- class X
1666
- include Mix
1667
- end
1668
-
1669
- X.class_meth #=&gt; &quot;Class Method!&quot;
1670
- </pre>
1671
- </div>
1672
- <div class="sourcecode">
1673
- <p class="source-link">[ <a href="javascript:toggleSource('M000191_source')" id="l_M000191_source">show source</a> ]</p>
1674
- <div id="M000191_source" class="dyn-source">
1675
- <pre>
1676
- <span class="ruby-comment cmt"># File lib/facets/core/module/class_extension.rb, line 62</span>
1677
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">class_extension</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
1678
- <span class="ruby-ivar">@class_extension</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword kw">do</span>
1679
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">append_features</span>(<span class="ruby-identifier">mod</span>)
1680
- <span class="ruby-identifier">append_features_without_class_extension</span>(<span class="ruby-identifier">mod</span>)
1681
- <span class="ruby-keyword kw">end</span>
1682
- <span class="ruby-keyword kw">end</span>
1683
- <span class="ruby-ivar">@class_extension</span>.<span class="ruby-identifier">module_eval</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
1684
- <span class="ruby-ivar">@class_extension</span>
1685
- <span class="ruby-keyword kw">end</span>
1686
- </pre>
1687
- </div>
1688
- </div>
1689
- </div>
1690
- <div class="method">
1691
- <div class="title">
1692
- <a name="M000180"></a><b>redef</b>( sym, aka=nil, &amp;blk )
1693
- </div>
1694
- <div class="description">
1695
- <p>
1696
- Alias for <a href="Module.html#M000149">redefine_method</a>
1697
- </p>
1698
- </div>
1699
- </div>
1700
- <div class="method">
1701
- <div class="title">
1702
- <a name="M000149"></a><b>redefine_method</b>( sym, aka=nil, &amp;blk )
1703
- </div>
1704
- <div class="description">
1705
- <p>
1706
- Creates a new method for a pre-existing method.
1707
- </p>
1708
- <p>
1709
- If <em>aka</em> is given, then the method being redefined will first be
1710
- aliased to this name.
1711
- </p>
1712
- <pre>
1713
- class Greeter
1714
- def hello ; &quot;Hello&quot; ; end
1715
- end
1716
-
1717
- Greeter.new.hello #=&gt; &quot;Hello&quot;
1718
-
1719
- class Greeter
1720
- redefine_method( :hello, :hi ) do
1721
- hi + &quot;, friend!&quot;
1722
- end
1723
- end
1724
-
1725
- Greeter.new.hello #=&gt; &quot;Hello, friend!&quot;
1726
- </pre>
1727
- </div>
1728
- <div class="aka">
1729
- This method is also aliased as
1730
- <a href="Module.html#M000180">redef</a>
1731
- </div>
1732
- <div class="sourcecode">
1733
- <p class="source-link">[ <a href="javascript:toggleSource('M000149_source')" id="l_M000149_source">show source</a> ]</p>
1734
- <div id="M000149_source" class="dyn-source">
1735
- <pre>
1736
- <span class="ruby-comment cmt"># File lib/facets/core/module/redefine_method.rb, line 25</span>
1737
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">redefine_method</span>( <span class="ruby-identifier">sym</span>, <span class="ruby-identifier">aka</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> )
1738
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;method does not exist&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">method_defined?</span>( <span class="ruby-identifier">sym</span> )
1739
- <span class="ruby-identifier">alias_method</span>( <span class="ruby-identifier">aka</span>, <span class="ruby-identifier">sym</span> ) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">aka</span>
1740
- <span class="ruby-identifier">undef_method</span>( <span class="ruby-identifier">sym</span> )
1741
- <span class="ruby-identifier">define_method</span>( <span class="ruby-identifier">sym</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> )
1742
- <span class="ruby-keyword kw">end</span>
1743
- </pre>
1744
- </div>
1745
- </div>
1746
- </div>
1747
- <div class="method">
1748
- <div class="title">
1749
- <a name="M000160"></a><b>redirect</b>( method_hash )
1750
- </div>
1751
- <div class="description">
1752
- <p>
1753
- Alias for <a href="Module.html#M000150">redirect_method</a>
1754
- </p>
1755
- </div>
1756
- </div>
1757
- <div class="method">
1758
- <div class="title">
1759
- <a name="M000172"></a><b>rename</b>( to_sym, from_sym )
1760
- </div>
1761
- <div class="description">
1762
- <p>
1763
- Alias for <a href="Module.html#M000170">rename_method</a>
1764
- </p>
1765
- </div>
1766
- </div>
1767
- <div class="method">
1768
- <div class="title">
1769
- <a name="M000170"></a><b>rename_method</b>( to_sym, from_sym )
1770
- </div>
1771
- <div class="description">
1772
- <p>
1773
- Aliases a method and undefines the original.
1774
- </p>
1775
- <pre>
1776
- rename_method( :to_method, :from_method )
1777
- </pre>
1778
- </div>
1779
- <div class="aka">
1780
- This method is also aliased as
1781
- <a href="Module.html#M000172">rename</a>
1782
- </div>
1783
- <div class="sourcecode">
1784
- <p class="source-link">[ <a href="javascript:toggleSource('M000170_source')" id="l_M000170_source">show source</a> ]</p>
1785
- <div id="M000170_source" class="dyn-source">
1786
- <pre>
1787
- <span class="ruby-comment cmt"># File lib/facets/core/module/rename_method.rb, line 7</span>
1788
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rename_method</span>( <span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">from_sym</span> )
1789
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;method #{from_sym} does not exist&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">method_defined?</span>( <span class="ruby-identifier">from_sym</span> )
1790
- <span class="ruby-identifier">alias_method</span>( <span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">from_sym</span> )
1791
- <span class="ruby-identifier">undef_method</span>( <span class="ruby-identifier">from_sym</span> )
1792
- <span class="ruby-keyword kw">end</span>
1793
- </pre>
1794
- </div>
1795
- </div>
1796
- </div>
1797
- <div class="method">
1798
- <div class="title">
1799
- <a name="M000186"></a><b>wrap</b>( sym, &amp;blk )
1800
- </div>
1801
- <div class="description">
1802
- <p>
1803
- Alias for <a href="Module.html#M000167">wrap_method</a>
1804
- </p>
1805
- </div>
1806
- </div>
1807
- </div>
1808
-
1809
- </div>
1810
-
1811
- </body>
1812
- </html>