facets 2.3.0 → 2.4.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 (1922) hide show
  1. data/AUTHORS +1 -1
  2. data/CHANGES +17 -3
  3. data/MANIFEST +1301 -0
  4. data/NOTES +42 -11
  5. data/README +16 -26
  6. data/doc/History.txt +73 -0
  7. data/doc/html/api.css +79 -0
  8. data/doc/html/api/core/classes/Array.html +894 -0
  9. data/doc/html/api/core/classes/Binding.html +419 -0
  10. data/doc/html/api/core/classes/Class.html +218 -0
  11. data/doc/html/api/core/classes/Comparable.html +261 -0
  12. data/doc/html/api/core/classes/Dir.html +397 -0
  13. data/doc/html/api/core/classes/Enumerable.html +1124 -0
  14. data/doc/html/api/core/classes/Exception.html +130 -0
  15. data/doc/html/api/core/classes/File.html +456 -0
  16. data/doc/html/api/core/classes/FileTest.html +118 -0
  17. data/doc/html/api/core/classes/Float.html +133 -0
  18. data/doc/html/api/core/classes/Functor.html +173 -0
  19. data/doc/html/api/core/classes/Hash.html +1992 -0
  20. data/doc/html/api/core/classes/Indexable.html +606 -0
  21. data/doc/html/api/core/classes/Integer.html +577 -0
  22. data/doc/html/api/core/classes/Kernel.html +2135 -0
  23. data/doc/html/api/core/classes/MatchData.html +203 -0
  24. data/doc/html/api/core/classes/MissingArgument.html +97 -0
  25. data/doc/html/api/core/classes/Module.html +1605 -0
  26. data/doc/html/api/core/classes/Module/CloneExtensions.html +188 -0
  27. data/doc/html/api/core/classes/Object.html +147 -0
  28. data/doc/html/api/core/classes/Proc.html +346 -0
  29. data/doc/html/api/core/classes/Range.html +360 -0
  30. data/doc/html/api/core/classes/Regexp.html +193 -0
  31. data/doc/html/api/core/classes/Stackable.html +264 -0
  32. data/doc/html/api/core/classes/String.html +2297 -0
  33. data/doc/html/api/core/classes/String/Words.html +330 -0
  34. data/doc/html/api/core/classes/Time.html +521 -0
  35. data/doc/html/api/core/classes/UnboundMethod.html +196 -0
  36. data/doc/html/api/core/created.rid +1 -0
  37. data/doc/html/api/core/files/AUTHORS.html +256 -0
  38. data/doc/html/api/core/files/CHANGES.html +259 -0
  39. data/doc/html/api/core/files/COPYING.html +462 -0
  40. data/doc/html/api/core/files/MANIFEST.html +597 -0
  41. data/doc/html/api/core/files/NOTES.html +135 -0
  42. data/doc/html/api/core/files/README.html +412 -0
  43. data/doc/html/api/core/files/lib/facets/array/conjoin_rb.html +92 -0
  44. data/doc/html/api/core/files/lib/facets/array/delete_rb.html +92 -0
  45. data/doc/html/api/core/files/lib/facets/array/indexable_rb.html +97 -0
  46. data/doc/html/api/core/files/lib/facets/array/merge_rb.html +92 -0
  47. data/doc/html/api/core/files/lib/facets/array/not_empty_rb.html +92 -0
  48. data/doc/html/api/core/files/lib/facets/array/only_rb.html +92 -0
  49. data/doc/html/api/core/files/lib/facets/array/pad_rb.html +92 -0
  50. data/doc/html/api/core/files/lib/facets/array/product_rb.html +96 -0
  51. data/doc/html/api/core/files/lib/facets/array/rotate_rb.html +92 -0
  52. data/doc/html/api/core/files/lib/facets/array/select_rb.html +92 -0
  53. data/doc/html/api/core/files/lib/facets/array/splice_rb.html +92 -0
  54. data/doc/html/api/core/files/lib/facets/array/stackable_rb.html +97 -0
  55. data/doc/html/api/core/files/lib/facets/array/traverse_rb.html +92 -0
  56. data/doc/html/api/core/files/lib/facets/array_rb.html +129 -0
  57. data/doc/html/api/core/files/lib/facets/binding/caller_rb.html +97 -0
  58. data/doc/html/api/core/files/lib/facets/binding/defined_rb.html +96 -0
  59. data/doc/html/api/core/files/lib/facets/binding/local_variables_rb.html +96 -0
  60. data/doc/html/api/core/files/lib/facets/binding/opvars_rb.html +96 -0
  61. data/doc/html/api/core/files/lib/facets/binding/self_rb.html +96 -0
  62. data/doc/html/api/core/files/lib/facets/binding_rb.html +99 -0
  63. data/doc/html/api/core/files/lib/facets/bitmask_rb.html +92 -0
  64. data/doc/html/api/core/files/lib/facets/blank_rb.html +97 -0
  65. data/doc/html/api/core/files/lib/facets/boolean_rb.html +126 -0
  66. data/doc/html/api/core/files/lib/facets/callstack_rb.html +92 -0
  67. data/doc/html/api/core/files/lib/facets/class/descendents_rb.html +92 -0
  68. data/doc/html/api/core/files/lib/facets/class/prepend_rb.html +92 -0
  69. data/doc/html/api/core/files/lib/facets/class/subclasses_rb.html +96 -0
  70. data/doc/html/api/core/files/lib/facets/class_rb.html +97 -0
  71. data/doc/html/api/core/files/lib/facets/comparable/bound_rb.html +92 -0
  72. data/doc/html/api/core/files/lib/facets/comparable/cmp_rb.html +92 -0
  73. data/doc/html/api/core/files/lib/facets/comparable/comparable_rb.html +109 -0
  74. data/doc/html/api/core/files/lib/facets/comparable_rb.html +99 -0
  75. data/doc/html/api/core/files/lib/facets/dir/ascend_rb.html +92 -0
  76. data/doc/html/api/core/files/lib/facets/dir/descend_rb.html +96 -0
  77. data/doc/html/api/core/files/lib/facets/dir/multiglob_rb.html +92 -0
  78. data/doc/html/api/core/files/lib/facets/dir/parent_rb.html +92 -0
  79. data/doc/html/api/core/files/lib/facets/dir/recurse_rb.html +92 -0
  80. data/doc/html/api/core/files/lib/facets/dir_rb.html +102 -0
  81. data/doc/html/api/core/files/lib/facets/duplicable_rb.html +100 -0
  82. data/doc/html/api/core/files/lib/facets/enumerable/accumulate_rb.html +96 -0
  83. data/doc/html/api/core/files/lib/facets/enumerable/cluster_by_rb.html +96 -0
  84. data/doc/html/api/core/files/lib/facets/enumerable/collect_rb.html +92 -0
  85. data/doc/html/api/core/files/lib/facets/enumerable/divide_rb.html +92 -0
  86. data/doc/html/api/core/files/lib/facets/enumerable/duplicates_rb.html +92 -0
  87. data/doc/html/api/core/files/lib/facets/enumerable/each_by_rb.html +96 -0
  88. data/doc/html/api/core/files/lib/facets/enumerable/inject_rb.html +92 -0
  89. data/doc/html/api/core/files/lib/facets/enumerable/map_send_rb.html +92 -0
  90. data/doc/html/api/core/files/lib/facets/enumerable/mash_rb.html +92 -0
  91. data/doc/html/api/core/files/lib/facets/enumerable/mode_rb.html +92 -0
  92. data/doc/html/api/core/files/lib/facets/enumerable/modulate_rb.html +92 -0
  93. data/doc/html/api/core/files/lib/facets/enumerable/occur_rb.html +92 -0
  94. data/doc/html/api/core/files/lib/facets/enumerable/probability_rb.html +92 -0
  95. data/doc/html/api/core/files/lib/facets/enumerable/split_rb.html +92 -0
  96. data/doc/html/api/core/files/lib/facets/enumerable/sum_rb.html +92 -0
  97. data/doc/html/api/core/files/lib/facets/enumerable/uniq_by_rb.html +92 -0
  98. data/doc/html/api/core/files/lib/facets/enumerable_rb.html +111 -0
  99. data/doc/html/api/core/files/lib/facets/exception/detail_rb.html +92 -0
  100. data/doc/html/api/core/files/lib/facets/exception_rb.html +96 -0
  101. data/doc/html/api/core/files/lib/facets/file/null_rb.html +92 -0
  102. data/doc/html/api/core/files/lib/facets/file/read_rb.html +92 -0
  103. data/doc/html/api/core/files/lib/facets/file/rewrite_rb.html +92 -0
  104. data/doc/html/api/core/files/lib/facets/file/rootname_rb.html +92 -0
  105. data/doc/html/api/core/files/lib/facets/file/write_rb.html +92 -0
  106. data/doc/html/api/core/files/lib/facets/file_rb.html +100 -0
  107. data/doc/html/api/core/files/lib/facets/filetest/root_rb.html +92 -0
  108. data/doc/html/api/core/files/lib/facets/filetest_rb.html +97 -0
  109. data/doc/html/api/core/files/lib/facets/functor_rb.html +151 -0
  110. data/doc/html/api/core/files/lib/facets/hash/alias_rb.html +92 -0
  111. data/doc/html/api/core/files/lib/facets/hash/argumentize_rb.html +92 -0
  112. data/doc/html/api/core/files/lib/facets/hash/at_rb.html +92 -0
  113. data/doc/html/api/core/files/lib/facets/hash/autonew_rb.html +92 -0
  114. data/doc/html/api/core/files/lib/facets/hash/collate_rb.html +92 -0
  115. data/doc/html/api/core/files/lib/facets/hash/delete_rb.html +92 -0
  116. data/doc/html/api/core/files/lib/facets/hash/diff_rb.html +92 -0
  117. data/doc/html/api/core/files/lib/facets/hash/except_rb.html +92 -0
  118. data/doc/html/api/core/files/lib/facets/hash/insert_rb.html +92 -0
  119. data/doc/html/api/core/files/lib/facets/hash/inverse_rb.html +92 -0
  120. data/doc/html/api/core/files/lib/facets/hash/join_rb.html +92 -0
  121. data/doc/html/api/core/files/lib/facets/hash/keys_rb.html +92 -0
  122. data/doc/html/api/core/files/lib/facets/hash/mash_rb.html +96 -0
  123. data/doc/html/api/core/files/lib/facets/hash/merge_rb.html +92 -0
  124. data/doc/html/api/core/files/lib/facets/hash/op_rb.html +92 -0
  125. data/doc/html/api/core/files/lib/facets/hash/rekey_rb.html +96 -0
  126. data/doc/html/api/core/files/lib/facets/hash/select_rb.html +92 -0
  127. data/doc/html/api/core/files/lib/facets/hash/slice_rb.html +92 -0
  128. data/doc/html/api/core/files/lib/facets/hash/stringify_keys_rb.html +96 -0
  129. data/doc/html/api/core/files/lib/facets/hash/swap_rb.html +92 -0
  130. data/doc/html/api/core/files/lib/facets/hash/symbolize_keys_rb.html +96 -0
  131. data/doc/html/api/core/files/lib/facets/hash/to_h_rb.html +96 -0
  132. data/doc/html/api/core/files/lib/facets/hash/to_proc_rb.html +92 -0
  133. data/doc/html/api/core/files/lib/facets/hash/to_struct_rb.html +92 -0
  134. data/doc/html/api/core/files/lib/facets/hash/traverse_rb.html +92 -0
  135. data/doc/html/api/core/files/lib/facets/hash/update_rb.html +92 -0
  136. data/doc/html/api/core/files/lib/facets/hash/weave_rb.html +92 -0
  137. data/doc/html/api/core/files/lib/facets/hash/zipnew_rb.html +96 -0
  138. data/doc/html/api/core/files/lib/facets/hash_rb.html +118 -0
  139. data/doc/html/api/core/files/lib/facets/indexable_rb.html +113 -0
  140. data/doc/html/api/core/files/lib/facets/integer/factorial_rb.html +92 -0
  141. data/doc/html/api/core/files/lib/facets/integer/multiple_rb.html +92 -0
  142. data/doc/html/api/core/files/lib/facets/integer/of_rb.html +92 -0
  143. data/doc/html/api/core/files/lib/facets/integer/ordinal_rb.html +92 -0
  144. data/doc/html/api/core/files/lib/facets/integer_rb.html +100 -0
  145. data/doc/html/api/core/files/lib/facets/kernel/__dir___rb.html +92 -0
  146. data/doc/html/api/core/files/lib/facets/kernel/as_rb.html +96 -0
  147. data/doc/html/api/core/files/lib/facets/kernel/ask_rb.html +92 -0
  148. data/doc/html/api/core/files/lib/facets/kernel/attr_singleton_rb.html +92 -0
  149. data/doc/html/api/core/files/lib/facets/kernel/complete_rb.html +92 -0
  150. data/doc/html/api/core/files/lib/facets/kernel/constant_rb.html +92 -0
  151. data/doc/html/api/core/files/lib/facets/kernel/d_rb.html +92 -0
  152. data/doc/html/api/core/files/lib/facets/kernel/deep_copy_rb.html +92 -0
  153. data/doc/html/api/core/files/lib/facets/kernel/demo_rb.html +92 -0
  154. data/doc/html/api/core/files/lib/facets/kernel/ergo_rb.html +96 -0
  155. data/doc/html/api/core/files/lib/facets/kernel/here_rb.html +92 -0
  156. data/doc/html/api/core/files/lib/facets/kernel/in_rb.html +92 -0
  157. data/doc/html/api/core/files/lib/facets/kernel/instance_exec_rb.html +96 -0
  158. data/doc/html/api/core/files/lib/facets/kernel/instance_rb.html +92 -0
  159. data/doc/html/api/core/files/lib/facets/kernel/load_rb.html +92 -0
  160. data/doc/html/api/core/files/lib/facets/kernel/maybe_rb.html +92 -0
  161. data/doc/html/api/core/files/lib/facets/kernel/not_nil_rb.html +92 -0
  162. data/doc/html/api/core/files/lib/facets/kernel/object_rb.html +92 -0
  163. data/doc/html/api/core/files/lib/facets/kernel/p_rb.html +92 -0
  164. data/doc/html/api/core/files/lib/facets/kernel/populate_rb.html +92 -0
  165. data/doc/html/api/core/files/lib/facets/kernel/resc_rb.html +92 -0
  166. data/doc/html/api/core/files/lib/facets/kernel/respond_rb.html +92 -0
  167. data/doc/html/api/core/files/lib/facets/kernel/returning_rb.html +92 -0
  168. data/doc/html/api/core/files/lib/facets/kernel/silence_rb.html +92 -0
  169. data/doc/html/api/core/files/lib/facets/kernel/singleton_class_rb.html +92 -0
  170. data/doc/html/api/core/files/lib/facets/kernel/try_rb.html +92 -0
  171. data/doc/html/api/core/files/lib/facets/kernel/val_rb.html +92 -0
  172. data/doc/html/api/core/files/lib/facets/kernel/with_rb.html +92 -0
  173. data/doc/html/api/core/files/lib/facets/kernel_rb.html +115 -0
  174. data/doc/html/api/core/files/lib/facets/matchdata/match_rb.html +92 -0
  175. data/doc/html/api/core/files/lib/facets/matchdata/matchset_rb.html +92 -0
  176. data/doc/html/api/core/files/lib/facets/matchdata_rb.html +98 -0
  177. data/doc/html/api/core/files/lib/facets/metaid_rb.html +92 -0
  178. data/doc/html/api/core/files/lib/facets/module/abstract_rb.html +92 -0
  179. data/doc/html/api/core/files/lib/facets/module/alias_rb.html +92 -0
  180. data/doc/html/api/core/files/lib/facets/module/ancestor_rb.html +92 -0
  181. data/doc/html/api/core/files/lib/facets/module/can_rb.html +92 -0
  182. data/doc/html/api/core/files/lib/facets/module/class_rb.html +92 -0
  183. data/doc/html/api/core/files/lib/facets/module/clone_rb.html +92 -0
  184. data/doc/html/api/core/files/lib/facets/module/conflict_rb.html +92 -0
  185. data/doc/html/api/core/files/lib/facets/module/include_function_module_rb.html +92 -0
  186. data/doc/html/api/core/files/lib/facets/module/instance_methods_rb.html +92 -0
  187. data/doc/html/api/core/files/lib/facets/module/is_rb.html +92 -0
  188. data/doc/html/api/core/files/lib/facets/module/module_load_rb.html +92 -0
  189. data/doc/html/api/core/files/lib/facets/module/nesting_rb.html +92 -0
  190. data/doc/html/api/core/files/lib/facets/module/op_rb.html +92 -0
  191. data/doc/html/api/core/files/lib/facets/module/pathize_rb.html +92 -0
  192. data/doc/html/api/core/files/lib/facets/module/prepend_rb.html +92 -0
  193. data/doc/html/api/core/files/lib/facets/module/revise_rb.html +92 -0
  194. data/doc/html/api/core/files/lib/facets/module_rb.html +109 -0
  195. data/doc/html/api/core/files/lib/facets/nilclass_rb.html +96 -0
  196. data/doc/html/api/core/files/lib/facets/numeric/approx_rb.html +92 -0
  197. data/doc/html/api/core/files/lib/facets/numeric/distance_rb.html +92 -0
  198. data/doc/html/api/core/files/lib/facets/numeric/round_rb.html +92 -0
  199. data/doc/html/api/core/files/lib/facets/numeric_rb.html +98 -0
  200. data/doc/html/api/core/files/lib/facets/proc/bind_rb.html +92 -0
  201. data/doc/html/api/core/files/lib/facets/proc/compose_rb.html +92 -0
  202. data/doc/html/api/core/files/lib/facets/proc/curry_rb.html +92 -0
  203. data/doc/html/api/core/files/lib/facets/proc/partial_rb.html +125 -0
  204. data/doc/html/api/core/files/lib/facets/proc/to_method_rb.html +96 -0
  205. data/doc/html/api/core/files/lib/facets/proc/update_rb.html +92 -0
  206. data/doc/html/api/core/files/lib/facets/proc_rb.html +99 -0
  207. data/doc/html/api/core/files/lib/facets/range/combine_rb.html +92 -0
  208. data/doc/html/api/core/files/lib/facets/range/overlap_rb.html +92 -0
  209. data/doc/html/api/core/files/lib/facets/range/to_r_rb.html +92 -0
  210. data/doc/html/api/core/files/lib/facets/range/umbrella_rb.html +96 -0
  211. data/doc/html/api/core/files/lib/facets/range/within_rb.html +92 -0
  212. data/doc/html/api/core/files/lib/facets/range_rb.html +99 -0
  213. data/doc/html/api/core/files/lib/facets/regexp/arity_rb.html +92 -0
  214. data/doc/html/api/core/files/lib/facets/regexp/to_re_rb.html +92 -0
  215. data/doc/html/api/core/files/lib/facets/regexp_rb.html +98 -0
  216. data/doc/html/api/core/files/lib/facets/ruby_rb.html +110 -0
  217. data/doc/html/api/core/files/lib/facets/stackable_rb.html +120 -0
  218. data/doc/html/api/core/files/lib/facets/string/align_rb.html +92 -0
  219. data/doc/html/api/core/files/lib/facets/string/bracket_rb.html +92 -0
  220. data/doc/html/api/core/files/lib/facets/string/camelcase_rb.html +92 -0
  221. data/doc/html/api/core/files/lib/facets/string/capitalized_rb.html +92 -0
  222. data/doc/html/api/core/files/lib/facets/string/chomp_rb.html +92 -0
  223. data/doc/html/api/core/files/lib/facets/string/cleave_rb.html +92 -0
  224. data/doc/html/api/core/files/lib/facets/string/divide_rb.html +92 -0
  225. data/doc/html/api/core/files/lib/facets/string/fold_rb.html +92 -0
  226. data/doc/html/api/core/files/lib/facets/string/interpolate_rb.html +92 -0
  227. data/doc/html/api/core/files/lib/facets/string/line_wrap_rb.html +92 -0
  228. data/doc/html/api/core/files/lib/facets/string/mscan_rb.html +92 -0
  229. data/doc/html/api/core/files/lib/facets/string/natcmp_rb.html +92 -0
  230. data/doc/html/api/core/files/lib/facets/string/nchar_rb.html +92 -0
  231. data/doc/html/api/core/files/lib/facets/string/range_rb.html +92 -0
  232. data/doc/html/api/core/files/lib/facets/string/rewrite_rb.html +92 -0
  233. data/doc/html/api/core/files/lib/facets/string/shatter_rb.html +92 -0
  234. data/doc/html/api/core/files/lib/facets/string/snakecase_rb.html +92 -0
  235. data/doc/html/api/core/files/lib/facets/string/splice_rb.html +92 -0
  236. data/doc/html/api/core/files/lib/facets/string/stylize_rb.html +92 -0
  237. data/doc/html/api/core/files/lib/facets/string/subtract_rb.html +92 -0
  238. data/doc/html/api/core/files/lib/facets/string/tab_rb.html +92 -0
  239. data/doc/html/api/core/files/lib/facets/string/titlecase_rb.html +92 -0
  240. data/doc/html/api/core/files/lib/facets/string/to_re_rb.html +92 -0
  241. data/doc/html/api/core/files/lib/facets/string/to_time_rb.html +98 -0
  242. data/doc/html/api/core/files/lib/facets/string/underscore_rb.html +92 -0
  243. data/doc/html/api/core/files/lib/facets/string/words_rb.html +96 -0
  244. data/doc/html/api/core/files/lib/facets/string/xor_rb.html +92 -0
  245. data/doc/html/api/core/files/lib/facets/string_rb.html +109 -0
  246. data/doc/html/api/core/files/lib/facets/symbol/chomp_rb.html +92 -0
  247. data/doc/html/api/core/files/lib/facets/symbol/generate_rb.html +92 -0
  248. data/doc/html/api/core/files/lib/facets/symbol/not_rb.html +92 -0
  249. data/doc/html/api/core/files/lib/facets/symbol_rb.html +98 -0
  250. data/doc/html/api/core/files/lib/facets/time/ago_rb.html +96 -0
  251. data/doc/html/api/core/files/lib/facets/time/change_rb.html +92 -0
  252. data/doc/html/api/core/files/lib/facets/time/elapse_rb.html +92 -0
  253. data/doc/html/api/core/files/lib/facets/time/hence_rb.html +92 -0
  254. data/doc/html/api/core/files/lib/facets/time/set_rb.html +96 -0
  255. data/doc/html/api/core/files/lib/facets/time/stamp_rb.html +92 -0
  256. data/doc/html/api/core/files/lib/facets/time_rb.html +99 -0
  257. data/doc/html/api/core/files/lib/facets/to_hash_rb.html +92 -0
  258. data/doc/html/api/core/files/lib/facets/unboundmethod/arguments_rb.html +92 -0
  259. data/doc/html/api/core/files/lib/facets/unboundmethod_rb.html +97 -0
  260. data/doc/html/api/core/fr_class_index.html +74 -0
  261. data/doc/html/api/core/fr_file_index.html +269 -0
  262. data/doc/html/api/core/fr_method_index.html +463 -0
  263. data/doc/html/api/core/index.html +26 -0
  264. data/doc/html/api/core/rdoc-style.css +175 -0
  265. data/doc/html/api/more/classes/ANSICode.html +495 -0
  266. data/doc/html/api/more/classes/Advisable.html +271 -0
  267. data/doc/html/api/more/classes/Advisable/Method.html +251 -0
  268. data/doc/html/api/more/classes/Archive.html +89 -0
  269. data/doc/html/api/more/classes/Archive/Tar.html +89 -0
  270. data/doc/html/api/more/classes/Archive/Tar/Minitar.html +470 -0
  271. data/doc/html/api/more/classes/Archive/Tar/Minitar/Input.html +380 -0
  272. data/doc/html/api/more/classes/Archive/Tar/Minitar/Output.html +218 -0
  273. data/doc/html/api/more/classes/Archive/Tar/Minitar/Reader.html +285 -0
  274. data/doc/html/api/more/classes/Archive/Tar/Minitar/Writer.html +419 -0
  275. data/doc/html/api/more/classes/Association.html +307 -0
  276. data/doc/html/api/more/classes/Association/Kernel.html +134 -0
  277. data/doc/html/api/more/classes/Autoarray.html +168 -0
  278. data/doc/html/api/more/classes/BBCode.html +534 -0
  279. data/doc/html/api/more/classes/BasicObject.html +260 -0
  280. data/doc/html/api/more/classes/Behavior.html +145 -0
  281. data/doc/html/api/more/classes/BiCrypt.html +543 -0
  282. data/doc/html/api/more/classes/BigDuration.html +327 -0
  283. data/doc/html/api/more/classes/BinReadable.html +536 -0
  284. data/doc/html/api/more/classes/BinReadable/ByteOrder.html +225 -0
  285. data/doc/html/api/more/classes/Buildable.html +154 -0
  286. data/doc/html/api/more/classes/BuildingBlock.html +362 -0
  287. data/doc/html/api/more/classes/CGI.html +187 -0
  288. data/doc/html/api/more/classes/CLI.html +108 -0
  289. data/doc/html/api/more/classes/CLI/Arguments.html +709 -0
  290. data/doc/html/api/more/classes/CLI/Command.html +436 -0
  291. data/doc/html/api/more/classes/CLI/Command/UniversalOptions.html +91 -0
  292. data/doc/html/api/more/classes/CLI/NoCommandError.html +113 -0
  293. data/doc/html/api/more/classes/CLI/NoOptionError.html +120 -0
  294. data/doc/html/api/more/classes/CacheDecorator.html +224 -0
  295. data/doc/html/api/more/classes/Capsule.html +410 -0
  296. data/doc/html/api/more/classes/Capsule/MissingFile.html +96 -0
  297. data/doc/html/api/more/classes/Chain.html +208 -0
  298. data/doc/html/api/more/classes/Cloneable.html +131 -0
  299. data/doc/html/api/more/classes/Config.html +137 -0
  300. data/doc/html/api/more/classes/ConsoleUtils.html +240 -0
  301. data/doc/html/api/more/classes/Continuation.html +115 -0
  302. data/doc/html/api/more/classes/Coroutine.html +286 -0
  303. data/doc/html/api/more/classes/Crypt.html +277 -0
  304. data/doc/html/api/more/classes/CssFilter.html +473 -0
  305. data/doc/html/api/more/classes/CssTree.html +149 -0
  306. data/doc/html/api/more/classes/Date.html +252 -0
  307. data/doc/html/api/more/classes/Dictionary.html +1247 -0
  308. data/doc/html/api/more/classes/Downloader.html +514 -0
  309. data/doc/html/api/more/classes/Duration.html +769 -0
  310. data/doc/html/api/more/classes/Enumerable.html +340 -0
  311. data/doc/html/api/more/classes/Enumerable/Elementor.html +172 -0
  312. data/doc/html/api/more/classes/Enumerable/Enumerator.html +118 -0
  313. data/doc/html/api/more/classes/EnumerablePass.html +216 -0
  314. data/doc/html/api/more/classes/Equatable.html +190 -0
  315. data/doc/html/api/more/classes/EventHook.html +176 -0
  316. data/doc/html/api/more/classes/Expirable.html +197 -0
  317. data/doc/html/api/more/classes/File.html +130 -0
  318. data/doc/html/api/more/classes/FileList.html +982 -0
  319. data/doc/html/api/more/classes/FileShell.html +774 -0
  320. data/doc/html/api/more/classes/FileUtils.html +454 -0
  321. data/doc/html/api/more/classes/Fileable.html +181 -0
  322. data/doc/html/api/more/classes/Fileable/DSL.html +306 -0
  323. data/doc/html/api/more/classes/GetoptLong.html +120 -0
  324. data/doc/html/api/more/classes/GetoptLong/DSL.html +210 -0
  325. data/doc/html/api/more/classes/Hash2Xml.html +177 -0
  326. data/doc/html/api/more/classes/HtmlFilter.html +850 -0
  327. data/doc/html/api/more/classes/IORedirect.html +222 -0
  328. data/doc/html/api/more/classes/InfinityClass.html +452 -0
  329. data/doc/html/api/more/classes/InfinityClass/Numeric.html +197 -0
  330. data/doc/html/api/more/classes/InstanceReflection.html +129 -0
  331. data/doc/html/api/more/classes/Instantiable.html +142 -0
  332. data/doc/html/api/more/classes/Instantise.html +162 -0
  333. data/doc/html/api/more/classes/Interval.html +879 -0
  334. data/doc/html/api/more/classes/It.html +207 -0
  335. data/doc/html/api/more/classes/LRUCache.html +464 -0
  336. data/doc/html/api/more/classes/LRUCache/Item.html +114 -0
  337. data/doc/html/api/more/classes/LRUCache/Sentinel.html +100 -0
  338. data/doc/html/api/more/classes/Lazy.html +96 -0
  339. data/doc/html/api/more/classes/Lazy/Future.html +100 -0
  340. data/doc/html/api/more/classes/Lazy/Promise.html +112 -0
  341. data/doc/html/api/more/classes/Lazy/PromiseSafe.html +99 -0
  342. data/doc/html/api/more/classes/LinkedList.html +494 -0
  343. data/doc/html/api/more/classes/LinkedList/Node.html +151 -0
  344. data/doc/html/api/more/classes/Logger.html +231 -0
  345. data/doc/html/api/more/classes/Logger/Ansicolor.html +279 -0
  346. data/doc/html/api/more/classes/Logger/LogDevice.html +123 -0
  347. data/doc/html/api/more/classes/Module.html +1410 -0
  348. data/doc/html/api/more/classes/Multiton.html +207 -0
  349. data/doc/html/api/more/classes/Multiton/Inclusive.html +128 -0
  350. data/doc/html/api/more/classes/Multiton/MetaMethods.html +270 -0
  351. data/doc/html/api/more/classes/NackClass.html +99 -0
  352. data/doc/html/api/more/classes/Net.html +88 -0
  353. data/doc/html/api/more/classes/Net/SMTP.html +259 -0
  354. data/doc/html/api/more/classes/NilClass.html +227 -0
  355. data/doc/html/api/more/classes/NullClass.html +204 -0
  356. data/doc/html/api/more/classes/Numeric.html +1188 -0
  357. data/doc/html/api/more/classes/ObjectReflection.html +145 -0
  358. data/doc/html/api/more/classes/OpEsc.html +138 -0
  359. data/doc/html/api/more/classes/OpenCascade.html +144 -0
  360. data/doc/html/api/more/classes/OpenCollection.html +140 -0
  361. data/doc/html/api/more/classes/OpenHash.html +158 -0
  362. data/doc/html/api/more/classes/OpenObject.html +604 -0
  363. data/doc/html/api/more/classes/OpenStruct.html +413 -0
  364. data/doc/html/api/more/classes/PQueue.html +734 -0
  365. data/doc/html/api/more/classes/PathList.html +161 -0
  366. data/doc/html/api/more/classes/PathList/Finder.html +137 -0
  367. data/doc/html/api/more/classes/Pathname.html +178 -0
  368. data/doc/html/api/more/classes/Pool.html +206 -0
  369. data/doc/html/api/more/classes/Proc.html +138 -0
  370. data/doc/html/api/more/classes/ProgressBar.html +683 -0
  371. data/doc/html/api/more/classes/Prototype.html +245 -0
  372. data/doc/html/api/more/classes/RWDelegator.html +196 -0
  373. data/doc/html/api/more/classes/Random.html +164 -0
  374. data/doc/html/api/more/classes/Random/Array.html +341 -0
  375. data/doc/html/api/more/classes/Random/Hash.html +380 -0
  376. data/doc/html/api/more/classes/Random/Object.html +121 -0
  377. data/doc/html/api/more/classes/Random/String.html +301 -0
  378. data/doc/html/api/more/classes/Random/String/Self.html +155 -0
  379. data/doc/html/api/more/classes/Recorder.html +205 -0
  380. data/doc/html/api/more/classes/RecursiveDependency.html +92 -0
  381. data/doc/html/api/more/classes/Reference.html +198 -0
  382. data/doc/html/api/more/classes/Registerable.html +159 -0
  383. data/doc/html/api/more/classes/Semaphore.html +262 -0
  384. data/doc/html/api/more/classes/Set.html +119 -0
  385. data/doc/html/api/more/classes/Settings.html +290 -0
  386. data/doc/html/api/more/classes/Settings/Setting.html +225 -0
  387. data/doc/html/api/more/classes/Settings/SettingCollection.html +144 -0
  388. data/doc/html/api/more/classes/Shellwords.html +113 -0
  389. data/doc/html/api/more/classes/SimpleStringIO.html +137 -0
  390. data/doc/html/api/more/classes/Snapshot.html +196 -0
  391. data/doc/html/api/more/classes/Snapshot/ValueHolder.html +165 -0
  392. data/doc/html/api/more/classes/String/Style.html +695 -0
  393. data/doc/html/api/more/classes/Struct.html +132 -0
  394. data/doc/html/api/more/classes/SyncArray.html +129 -0
  395. data/doc/html/api/more/classes/SyncHash.html +158 -0
  396. data/doc/html/api/more/classes/SyncHash/Delegator.html +213 -0
  397. data/doc/html/api/more/classes/SyncHash/Inheritor.html +213 -0
  398. data/doc/html/api/more/classes/System.html +1119 -0
  399. data/doc/html/api/more/classes/Timer.html +466 -0
  400. data/doc/html/api/more/classes/Timer/Dummy.html +141 -0
  401. data/doc/html/api/more/classes/TracePoint.html +455 -0
  402. data/doc/html/api/more/classes/Tuple.html +902 -0
  403. data/doc/html/api/more/classes/TypeCast.html +158 -0
  404. data/doc/html/api/more/classes/TypeCast/Class.html +129 -0
  405. data/doc/html/api/more/classes/TypeCast/Object.html +119 -0
  406. data/doc/html/api/more/classes/TypeCastException.html +96 -0
  407. data/doc/html/api/more/classes/URI.html +455 -0
  408. data/doc/html/api/more/classes/URI/Hash.html +107 -0
  409. data/doc/html/api/more/classes/URI/Kernel.html +124 -0
  410. data/doc/html/api/more/classes/Uninheritable.html +122 -0
  411. data/doc/html/api/more/classes/UploadUtils.html +499 -0
  412. data/doc/html/api/more/classes/VersionNumber.html +384 -0
  413. data/doc/html/api/more/classes/Weekdays.html +248 -0
  414. data/doc/html/api/more/classes/XOXO.html +252 -0
  415. data/doc/html/api/more/classes/ZipUtils.html +437 -0
  416. data/doc/html/api/more/classes/ZipUtils/DryRun.html +225 -0
  417. data/doc/html/api/more/classes/ZipUtils/NoWrite.html +225 -0
  418. data/doc/html/api/more/classes/ZipUtils/Verbose.html +225 -0
  419. data/doc/html/api/more/created.rid +1 -0
  420. data/doc/html/api/more/files/AUTHORS.html +257 -0
  421. data/doc/html/api/more/files/CHANGES.html +258 -0
  422. data/doc/html/api/more/files/COPYING.html +462 -0
  423. data/doc/html/api/more/files/MANIFEST.html +597 -0
  424. data/doc/html/api/more/files/NOTES.html +135 -0
  425. data/doc/html/api/more/files/README.html +411 -0
  426. data/doc/html/api/more/files/lib/facets/1stclassmethod_rb.html +181 -0
  427. data/doc/html/api/more/files/lib/facets/advisable_rb.html +124 -0
  428. data/doc/html/api/more/files/lib/facets/annotations_rb.html +179 -0
  429. data/doc/html/api/more/files/lib/facets/ansicode_rb.html +199 -0
  430. data/doc/html/api/more/files/lib/facets/arguments_rb.html +142 -0
  431. data/doc/html/api/more/files/lib/facets/association_rb.html +158 -0
  432. data/doc/html/api/more/files/lib/facets/attr_rb.html +92 -0
  433. data/doc/html/api/more/files/lib/facets/autoarray_rb.html +125 -0
  434. data/doc/html/api/more/files/lib/facets/autoreload_rb.html +134 -0
  435. data/doc/html/api/more/files/lib/facets/basicobject_rb.html +190 -0
  436. data/doc/html/api/more/files/lib/facets/bbcode_rb.html +138 -0
  437. data/doc/html/api/more/files/lib/facets/behavior_rb.html +125 -0
  438. data/doc/html/api/more/files/lib/facets/bicrypt_rb.html +124 -0
  439. data/doc/html/api/more/files/lib/facets/binreadable_rb.html +141 -0
  440. data/doc/html/api/more/files/lib/facets/buildable_rb.html +228 -0
  441. data/doc/html/api/more/files/lib/facets/bytes_rb.html +170 -0
  442. data/doc/html/api/more/files/lib/facets/cachedecorator_rb.html +178 -0
  443. data/doc/html/api/more/files/lib/facets/capsule_rb.html +143 -0
  444. data/doc/html/api/more/files/lib/facets/cattr_rb.html +125 -0
  445. data/doc/html/api/more/files/lib/facets/cgi_rb.html +111 -0
  446. data/doc/html/api/more/files/lib/facets/chain_rb.html +114 -0
  447. data/doc/html/api/more/files/lib/facets/class_extension_rb.html +155 -0
  448. data/doc/html/api/more/files/lib/facets/classmethods_rb.html +213 -0
  449. data/doc/html/api/more/files/lib/facets/cloneable_rb.html +134 -0
  450. data/doc/html/api/more/files/lib/facets/command_rb.html +170 -0
  451. data/doc/html/api/more/files/lib/facets/consoleutils_rb.html +109 -0
  452. data/doc/html/api/more/files/lib/facets/continuation_rb.html +145 -0
  453. data/doc/html/api/more/files/lib/facets/core_rb.html +133 -0
  454. data/doc/html/api/more/files/lib/facets/coroutine_rb.html +163 -0
  455. data/doc/html/api/more/files/lib/facets/crypt_rb.html +141 -0
  456. data/doc/html/api/more/files/lib/facets/cssfilter_rb.html +120 -0
  457. data/doc/html/api/more/files/lib/facets/daemonize_rb.html +118 -0
  458. data/doc/html/api/more/files/lib/facets/date_rb.html +121 -0
  459. data/doc/html/api/more/files/lib/facets/dependency_rb.html +158 -0
  460. data/doc/html/api/more/files/lib/facets/dictionary_rb.html +198 -0
  461. data/doc/html/api/more/files/lib/facets/downloader_rb.html +137 -0
  462. data/doc/html/api/more/files/lib/facets/duration_rb.html +132 -0
  463. data/doc/html/api/more/files/lib/facets/elementor_rb.html +148 -0
  464. data/doc/html/api/more/files/lib/facets/elementwise_rb.html +96 -0
  465. data/doc/html/api/more/files/lib/facets/enumerablepass_rb.html +153 -0
  466. data/doc/html/api/more/files/lib/facets/equatable_rb.html +145 -0
  467. data/doc/html/api/more/files/lib/facets/eventhook_rb.html +141 -0
  468. data/doc/html/api/more/files/lib/facets/expirable_rb.html +116 -0
  469. data/doc/html/api/more/files/lib/facets/fileable_rb.html +138 -0
  470. data/doc/html/api/more/files/lib/facets/filelist_rb.html +164 -0
  471. data/doc/html/api/more/files/lib/facets/fileshell_rb.html +124 -0
  472. data/doc/html/api/more/files/lib/facets/fileutils/head_rb.html +96 -0
  473. data/doc/html/api/more/files/lib/facets/fileutils/safe_ln_rb.html +96 -0
  474. data/doc/html/api/more/files/lib/facets/fileutils/slice_rb.html +96 -0
  475. data/doc/html/api/more/files/lib/facets/fileutils/tail_rb.html +96 -0
  476. data/doc/html/api/more/files/lib/facets/fileutils/wc_rb.html +96 -0
  477. data/doc/html/api/more/files/lib/facets/fileutils/whereis_rb.html +96 -0
  478. data/doc/html/api/more/files/lib/facets/fileutils/which_rb.html +96 -0
  479. data/doc/html/api/more/files/lib/facets/fileutils_rb.html +131 -0
  480. data/doc/html/api/more/files/lib/facets/float/round_rb.html +96 -0
  481. data/doc/html/api/more/files/lib/facets/getoptlong_rb.html +135 -0
  482. data/doc/html/api/more/files/lib/facets/heap_rb.html +132 -0
  483. data/doc/html/api/more/files/lib/facets/htmlfilter_rb.html +153 -0
  484. data/doc/html/api/more/files/lib/facets/infinity_rb.html +153 -0
  485. data/doc/html/api/more/files/lib/facets/inheritor_rb.html +149 -0
  486. data/doc/html/api/more/files/lib/facets/instantiable_rb.html +119 -0
  487. data/doc/html/api/more/files/lib/facets/instantise_rb.html +145 -0
  488. data/doc/html/api/more/files/lib/facets/interval_rb.html +163 -0
  489. data/doc/html/api/more/files/lib/facets/ioredirect_rb.html +133 -0
  490. data/doc/html/api/more/files/lib/facets/iteration_rb.html +94 -0
  491. data/doc/html/api/more/files/lib/facets/lazy_rb.html +120 -0
  492. data/doc/html/api/more/files/lib/facets/linkedlist_rb.html +159 -0
  493. data/doc/html/api/more/files/lib/facets/logger_rb.html +142 -0
  494. data/doc/html/api/more/files/lib/facets/lrucache_rb.html +129 -0
  495. data/doc/html/api/more/files/lib/facets/main_rb.html +126 -0
  496. data/doc/html/api/more/files/lib/facets/memoize_rb.html +163 -0
  497. data/doc/html/api/more/files/lib/facets/meta_rb.html +96 -0
  498. data/doc/html/api/more/files/lib/facets/methodspace_rb.html +138 -0
  499. data/doc/html/api/more/files/lib/facets/minitar_rb.html +203 -0
  500. data/doc/html/api/more/files/lib/facets/multipliers_rb.html +149 -0
  501. data/doc/html/api/more/files/lib/facets/multiton_rb.html +187 -0
  502. data/doc/html/api/more/files/lib/facets/nackclass_rb.html +121 -0
  503. data/doc/html/api/more/files/lib/facets/net/smtp_tls_rb.html +143 -0
  504. data/doc/html/api/more/files/lib/facets/nilstatus_rb.html +92 -0
  505. data/doc/html/api/more/files/lib/facets/nullclass_rb.html +122 -0
  506. data/doc/html/api/more/files/lib/facets/opencascade_rb.html +156 -0
  507. data/doc/html/api/more/files/lib/facets/opencollection_rb.html +123 -0
  508. data/doc/html/api/more/files/lib/facets/openhash_rb.html +107 -0
  509. data/doc/html/api/more/files/lib/facets/openobject_rb.html +167 -0
  510. data/doc/html/api/more/files/lib/facets/opesc_rb.html +94 -0
  511. data/doc/html/api/more/files/lib/facets/orderedhash_rb.html +142 -0
  512. data/doc/html/api/more/files/lib/facets/ostruct_rb.html +135 -0
  513. data/doc/html/api/more/files/lib/facets/overload_rb.html +119 -0
  514. data/doc/html/api/more/files/lib/facets/pathlist_rb.html +133 -0
  515. data/doc/html/api/more/files/lib/facets/pathname_rb.html +155 -0
  516. data/doc/html/api/more/files/lib/facets/pool_rb.html +131 -0
  517. data/doc/html/api/more/files/lib/facets/pqueue_rb.html +129 -0
  518. data/doc/html/api/more/files/lib/facets/progressbar_rb.html +126 -0
  519. data/doc/html/api/more/files/lib/facets/prototype_rb.html +102 -0
  520. data/doc/html/api/more/files/lib/facets/random_rb.html +148 -0
  521. data/doc/html/api/more/files/lib/facets/rbconfig_rb.html +124 -0
  522. data/doc/html/api/more/files/lib/facets/rbsystem_rb.html +143 -0
  523. data/doc/html/api/more/files/lib/facets/recorder_rb.html +154 -0
  524. data/doc/html/api/more/files/lib/facets/reference_rb.html +130 -0
  525. data/doc/html/api/more/files/lib/facets/reflection_rb.html +119 -0
  526. data/doc/html/api/more/files/lib/facets/registerable_rb.html +98 -0
  527. data/doc/html/api/more/files/lib/facets/rwdelegator_rb.html +122 -0
  528. data/doc/html/api/more/files/lib/facets/semaphore_rb.html +120 -0
  529. data/doc/html/api/more/files/lib/facets/set_rb.html +96 -0
  530. data/doc/html/api/more/files/lib/facets/settings_rb.html +141 -0
  531. data/doc/html/api/more/files/lib/facets/shellwords_rb.html +124 -0
  532. data/doc/html/api/more/files/lib/facets/snapshot_rb.html +177 -0
  533. data/doc/html/api/more/files/lib/facets/style_rb.html +96 -0
  534. data/doc/html/api/more/files/lib/facets/succ_rb.html +92 -0
  535. data/doc/html/api/more/files/lib/facets/syncarray_rb.html +125 -0
  536. data/doc/html/api/more/files/lib/facets/synchash_rb.html +138 -0
  537. data/doc/html/api/more/files/lib/facets/thread_rb.html +132 -0
  538. data/doc/html/api/more/files/lib/facets/timer_rb.html +174 -0
  539. data/doc/html/api/more/files/lib/facets/times_rb.html +163 -0
  540. data/doc/html/api/more/files/lib/facets/tracepoint_rb.html +167 -0
  541. data/doc/html/api/more/files/lib/facets/tuple_rb.html +160 -0
  542. data/doc/html/api/more/files/lib/facets/typecast_rb.html +214 -0
  543. data/doc/html/api/more/files/lib/facets/uninheritable_rb.html +129 -0
  544. data/doc/html/api/more/files/lib/facets/uploadutils_rb.html +176 -0
  545. data/doc/html/api/more/files/lib/facets/uri_rb.html +125 -0
  546. data/doc/html/api/more/files/lib/facets/version_rb.html +132 -0
  547. data/doc/html/api/more/files/lib/facets/xmlhash_rb.html +97 -0
  548. data/doc/html/api/more/files/lib/facets/xoxo_rb.html +136 -0
  549. data/doc/html/api/more/files/lib/facets/yaml_rb.html +145 -0
  550. data/doc/html/api/more/files/lib/facets/ziputils_rb.html +133 -0
  551. data/doc/html/api/more/fr_class_index.html +200 -0
  552. data/doc/html/api/more/fr_file_index.html +177 -0
  553. data/doc/html/api/more/fr_method_index.html +1181 -0
  554. data/doc/html/api/more/index.html +26 -0
  555. data/doc/html/api/more/rdoc-style.css +175 -0
  556. data/doc/html/authors.html +178 -0
  557. data/doc/html/changes.html +177 -0
  558. data/doc/html/copying.html +384 -0
  559. data/doc/html/img/APIdocs.png +0 -0
  560. data/doc/html/img/RubyFacets.png +0 -0
  561. data/doc/html/img/bomb.gif +0 -0
  562. data/doc/html/img/develop.gif +0 -0
  563. data/doc/html/img/email.gif +0 -0
  564. data/doc/html/img/fade_blue_down.gif +0 -0
  565. data/doc/html/img/fade_red_down.png +0 -0
  566. data/doc/html/img/folder.gif +0 -0
  567. data/doc/html/img/home.gif +0 -0
  568. data/doc/html/img/menu_bkg.png +0 -0
  569. data/doc/html/img/quill.gif +0 -0
  570. data/doc/html/img/ruby-h.png +0 -0
  571. data/doc/html/img/ruby.gif +0 -0
  572. data/doc/html/img/ruby.png +0 -0
  573. data/doc/html/img/source.gif +0 -0
  574. data/doc/html/index.html +16 -0
  575. data/doc/html/js/doclist.js +20 -0
  576. data/doc/html/js/jquery.js +3408 -0
  577. data/doc/html/list.json +1 -0
  578. data/doc/html/manifest.html +519 -0
  579. data/doc/html/menu.html +70 -0
  580. data/doc/html/notes.html +57 -0
  581. data/doc/html/rakefile.html +45 -0
  582. data/doc/html/readme.html +327 -0
  583. data/doc/html/style-rdoc.css +208 -0
  584. data/lib/facets.rb +2 -0
  585. data/lib/facets/1stclassmethod.rb +140 -0
  586. data/lib/facets/advisable.rb +162 -0
  587. data/lib/facets/annotations.rb +300 -0
  588. data/lib/facets/ansicode.rb +320 -0
  589. data/lib/facets/arguments.rb +349 -0
  590. data/lib/facets/array.rb +24 -0
  591. data/lib/facets/array/conjoin.rb +58 -0
  592. data/lib/facets/array/delete.rb +61 -0
  593. data/lib/facets/array/indexable.rb +73 -0
  594. data/lib/facets/array/merge.rb +21 -0
  595. data/lib/facets/array/not_empty.rb +13 -0
  596. data/lib/facets/array/only.rb +21 -0
  597. data/lib/facets/array/pad.rb +41 -0
  598. data/lib/facets/array/product.rb +15 -0
  599. data/lib/facets/array/rotate.rb +42 -0
  600. data/lib/facets/array/select.rb +16 -0
  601. data/lib/facets/array/splice.rb +30 -0
  602. data/lib/facets/array/stackable.rb +33 -0
  603. data/lib/facets/array/traverse.rb +22 -0
  604. data/lib/facets/association.rb +194 -0
  605. data/lib/{core/facets/module → facets}/attr.rb +0 -0
  606. data/lib/facets/autoarray.rb +62 -0
  607. data/lib/facets/autoreload.rb +150 -0
  608. data/lib/facets/basicobject.rb +263 -0
  609. data/lib/facets/bbcode.rb +397 -0
  610. data/lib/facets/behavior.rb +104 -0
  611. data/lib/facets/bicrypt.rb +265 -0
  612. data/lib/facets/binding.rb +6 -0
  613. data/lib/facets/binding/caller.rb +54 -0
  614. data/lib/facets/binding/defined.rb +13 -0
  615. data/lib/facets/binding/local_variables.rb +15 -0
  616. data/lib/facets/binding/opvars.rb +24 -0
  617. data/lib/facets/binding/self.rb +12 -0
  618. data/lib/facets/binreadable.rb +221 -0
  619. data/lib/{core/facets/integer → facets}/bitmask.rb +0 -0
  620. data/lib/facets/blank.rb +60 -0
  621. data/lib/facets/boolean.rb +156 -0
  622. data/lib/facets/buildable.rb +344 -0
  623. data/lib/facets/bytes.rb +173 -0
  624. data/lib/facets/cachedecorator.rb +117 -0
  625. data/lib/facets/callstack.rb +52 -0
  626. data/lib/facets/capsule.rb +258 -0
  627. data/lib/facets/cattr.rb +141 -0
  628. data/lib/facets/cgi.rb +50 -0
  629. data/lib/facets/chain.rb +58 -0
  630. data/lib/facets/class.rb +4 -0
  631. data/lib/facets/class/descendents.rb +28 -0
  632. data/lib/facets/class/prepend.rb +50 -0
  633. data/lib/facets/class/subclasses.rb +2 -0
  634. data/lib/facets/class_extension.rb +114 -0
  635. data/lib/facets/classmethods.rb +199 -0
  636. data/lib/facets/cloneable.rb +76 -0
  637. data/lib/facets/command.rb +422 -0
  638. data/lib/facets/comparable.rb +6 -0
  639. data/lib/facets/comparable/bound.rb +65 -0
  640. data/lib/facets/comparable/cmp.rb +38 -0
  641. data/lib/facets/comparable/comparable.rb +42 -0
  642. data/lib/facets/consoleutils.rb +113 -0
  643. data/lib/facets/continuation.rb +57 -0
  644. data/lib/facets/core.rb +50 -0
  645. data/lib/facets/coroutine.rb +158 -0
  646. data/lib/facets/crypt.rb +166 -0
  647. data/lib/facets/cssfilter.rb +254 -0
  648. data/lib/facets/daemonize.rb +44 -0
  649. data/lib/facets/date.rb +78 -0
  650. data/lib/facets/dependency.rb +151 -0
  651. data/lib/facets/dictionary.rb +474 -0
  652. data/lib/facets/dir.rb +9 -0
  653. data/lib/facets/dir/ascend.rb +59 -0
  654. data/lib/facets/dir/descend.rb +1 -0
  655. data/lib/{core/facets → facets}/dir/multiglob.rb +0 -0
  656. data/lib/facets/dir/parent.rb +13 -0
  657. data/lib/facets/dir/recurse.rb +29 -0
  658. data/lib/facets/downloader.rb +281 -0
  659. data/lib/facets/duplicable.rb +43 -0
  660. data/lib/facets/duration.rb +540 -0
  661. data/lib/facets/elementor.rb +133 -0
  662. data/lib/facets/elementwise.rb +61 -0
  663. data/lib/facets/enumerable.rb +19 -0
  664. data/lib/facets/enumerable/accumulate.rb +21 -0
  665. data/lib/facets/enumerable/cluster_by.rb +21 -0
  666. data/lib/facets/enumerable/collect.rb +54 -0
  667. data/lib/facets/enumerable/divide.rb +33 -0
  668. data/lib/facets/enumerable/duplicates.rb +38 -0
  669. data/lib/facets/enumerable/each_by.rb +33 -0
  670. data/lib/facets/enumerable/inject.rb +31 -0
  671. data/lib/facets/enumerable/map_send.rb +12 -0
  672. data/lib/facets/enumerable/mash.rb +32 -0
  673. data/lib/facets/enumerable/mode.rb +15 -0
  674. data/lib/facets/enumerable/modulate.rb +22 -0
  675. data/lib/facets/enumerable/occur.rb +38 -0
  676. data/lib/facets/enumerable/probability.rb +133 -0
  677. data/lib/facets/enumerable/split.rb +23 -0
  678. data/lib/facets/enumerable/sum.rb +16 -0
  679. data/lib/facets/enumerable/uniq_by.rb +18 -0
  680. data/lib/facets/enumerablepass.rb +217 -0
  681. data/lib/facets/equatable.rb +120 -0
  682. data/lib/facets/eventhook.rb +132 -0
  683. data/lib/{core/facets → facets}/exception.rb +0 -0
  684. data/lib/facets/exception/detail.rb +19 -0
  685. data/lib/facets/expirable.rb +82 -0
  686. data/lib/facets/file.rb +7 -0
  687. data/lib/facets/file/null.rb +21 -0
  688. data/lib/facets/file/read.rb +41 -0
  689. data/lib/facets/file/rewrite.rb +54 -0
  690. data/lib/facets/file/rootname.rb +23 -0
  691. data/lib/facets/file/write.rb +64 -0
  692. data/lib/facets/fileable.rb +162 -0
  693. data/lib/facets/filelist.rb +499 -0
  694. data/lib/facets/fileshell.rb +200 -0
  695. data/lib/facets/filetest.rb +3 -0
  696. data/lib/facets/filetest/root.rb +17 -0
  697. data/lib/facets/fileutils.rb +27 -0
  698. data/lib/facets/fileutils/head.rb +1 -0
  699. data/lib/facets/fileutils/safe_ln.rb +28 -0
  700. data/lib/facets/fileutils/slice.rb +141 -0
  701. data/lib/facets/fileutils/tail.rb +1 -0
  702. data/lib/facets/fileutils/wc.rb +114 -0
  703. data/lib/facets/fileutils/whereis.rb +63 -0
  704. data/lib/facets/fileutils/which.rb +101 -0
  705. data/lib/facets/float/round.rb +36 -0
  706. data/lib/facets/functor.rb +77 -0
  707. data/lib/facets/getoptlong.rb +71 -0
  708. data/lib/facets/hash.rb +25 -0
  709. data/lib/facets/hash/alias.rb +31 -0
  710. data/lib/facets/hash/argumentize.rb +21 -0
  711. data/lib/facets/hash/at.rb +8 -0
  712. data/lib/facets/hash/autonew.rb +42 -0
  713. data/lib/facets/hash/collate.rb +45 -0
  714. data/lib/facets/hash/delete.rb +47 -0
  715. data/lib/facets/hash/diff.rb +11 -0
  716. data/lib/{core/facets → facets}/hash/except.rb +0 -0
  717. data/lib/facets/hash/insert.rb +19 -0
  718. data/lib/facets/hash/inverse.rb +27 -0
  719. data/lib/facets/hash/join.rb +14 -0
  720. data/lib/facets/hash/keys.rb +45 -0
  721. data/lib/facets/hash/mash.rb +18 -0
  722. data/lib/facets/hash/merge.rb +74 -0
  723. data/lib/facets/hash/op.rb +85 -0
  724. data/lib/facets/hash/rekey.rb +59 -0
  725. data/lib/{core/facets → facets}/hash/select.rb +0 -0
  726. data/lib/{core/facets → facets}/hash/slice.rb +0 -0
  727. data/lib/facets/hash/stringify_keys.rb +1 -0
  728. data/lib/facets/hash/swap.rb +17 -0
  729. data/lib/facets/hash/symbolize_keys.rb +95 -0
  730. data/lib/facets/hash/to_h.rb +1 -0
  731. data/lib/facets/hash/to_proc.rb +41 -0
  732. data/lib/facets/hash/to_struct.rb +17 -0
  733. data/lib/facets/hash/traverse.rb +41 -0
  734. data/lib/facets/hash/update.rb +75 -0
  735. data/lib/{core/facets → facets}/hash/weave.rb +0 -0
  736. data/lib/facets/hash/zipnew.rb +2 -0
  737. data/lib/facets/heap.rb +22 -0
  738. data/lib/facets/htmlfilter.rb +595 -0
  739. data/lib/facets/indexable.rb +242 -0
  740. data/lib/facets/infinity.rb +193 -0
  741. data/lib/facets/inheritor.rb +126 -0
  742. data/lib/facets/instantiable.rb +47 -0
  743. data/lib/facets/instantise.rb +92 -0
  744. data/lib/facets/integer.rb +7 -0
  745. data/lib/facets/integer/factorial.rb +30 -0
  746. data/lib/facets/integer/multiple.rb +15 -0
  747. data/lib/facets/integer/of.rb +18 -0
  748. data/lib/facets/integer/ordinal.rb +24 -0
  749. data/lib/facets/interval.rb +282 -0
  750. data/lib/facets/ioredirect.rb +130 -0
  751. data/lib/facets/iteration.rb +65 -0
  752. data/lib/facets/kernel.rb +22 -0
  753. data/lib/facets/kernel/__dir__.rb +12 -0
  754. data/lib/facets/kernel/as.rb +100 -0
  755. data/lib/facets/kernel/ask.rb +27 -0
  756. data/lib/facets/kernel/attr_singleton.rb +62 -0
  757. data/lib/facets/kernel/complete.rb +18 -0
  758. data/lib/{core/facets → facets}/kernel/constant.rb +0 -0
  759. data/lib/facets/kernel/d.rb +26 -0
  760. data/lib/facets/kernel/deep_copy.rb +13 -0
  761. data/lib/facets/kernel/demo.rb +23 -0
  762. data/lib/facets/kernel/ergo.rb +42 -0
  763. data/lib/facets/kernel/here.rb +12 -0
  764. data/lib/facets/kernel/in.rb +13 -0
  765. data/lib/facets/kernel/instance.rb +73 -0
  766. data/lib/facets/kernel/instance_exec.rb +19 -0
  767. data/lib/facets/kernel/load.rb +41 -0
  768. data/lib/facets/kernel/maybe.rb +18 -0
  769. data/lib/facets/kernel/not_nil.rb +17 -0
  770. data/lib/facets/kernel/object.rb +53 -0
  771. data/lib/facets/kernel/p.rb +24 -0
  772. data/lib/facets/kernel/populate.rb +73 -0
  773. data/lib/facets/kernel/resc.rb +16 -0
  774. data/lib/facets/kernel/respond.rb +23 -0
  775. data/lib/facets/kernel/returning.rb +23 -0
  776. data/lib/facets/kernel/silence.rb +69 -0
  777. data/lib/facets/kernel/singleton_class.rb +14 -0
  778. data/lib/facets/kernel/try.rb +23 -0
  779. data/lib/facets/kernel/val.rb +19 -0
  780. data/lib/facets/kernel/with.rb +20 -0
  781. data/lib/facets/lazy.rb +238 -0
  782. data/lib/facets/linkedlist.rb +222 -0
  783. data/lib/facets/logger.rb +291 -0
  784. data/lib/facets/lrucache.rb +157 -0
  785. data/lib/facets/main.rb +70 -0
  786. data/lib/facets/matchdata.rb +6 -0
  787. data/lib/facets/matchdata/match.rb +15 -0
  788. data/lib/facets/matchdata/matchset.rb +44 -0
  789. data/lib/facets/memoize.rb +116 -0
  790. data/lib/facets/meta.rb +23 -0
  791. data/lib/facets/metaid.rb +145 -0
  792. data/lib/facets/methodspace.rb +141 -0
  793. data/lib/facets/minitar.rb +1063 -0
  794. data/lib/facets/module.rb +19 -0
  795. data/lib/facets/module/abstract.rb +21 -0
  796. data/lib/facets/module/alias.rb +115 -0
  797. data/lib/facets/module/ancestor.rb +16 -0
  798. data/lib/facets/module/can.rb +14 -0
  799. data/lib/facets/module/class.rb +14 -0
  800. data/lib/facets/module/clone.rb +57 -0
  801. data/lib/facets/module/conflict.rb +56 -0
  802. data/lib/facets/module/include_function_module.rb +25 -0
  803. data/lib/facets/module/instance_methods.rb +40 -0
  804. data/lib/facets/module/is.rb +57 -0
  805. data/lib/facets/module/module_load.rb +56 -0
  806. data/lib/facets/module/nesting.rb +84 -0
  807. data/lib/facets/module/op.rb +95 -0
  808. data/lib/facets/module/pathize.rb +19 -0
  809. data/lib/facets/module/prepend.rb +25 -0
  810. data/lib/facets/module/revise.rb +168 -0
  811. data/lib/facets/multipliers.rb +109 -0
  812. data/lib/facets/multiton.rb +386 -0
  813. data/lib/facets/nackclass.rb +41 -0
  814. data/lib/{more/facets → facets/net}/smtp_tls.rb +0 -0
  815. data/lib/facets/nilclass.rb +3 -0
  816. data/lib/facets/nilstatus.rb +47 -0
  817. data/lib/facets/nullclass.rb +74 -0
  818. data/lib/facets/numeric.rb +5 -0
  819. data/lib/facets/numeric/approx.rb +15 -0
  820. data/lib/facets/numeric/distance.rb +14 -0
  821. data/lib/facets/numeric/round.rb +51 -0
  822. data/lib/facets/opencascade.rb +92 -0
  823. data/lib/facets/opencollection.rb +43 -0
  824. data/lib/facets/openhash.rb +38 -0
  825. data/lib/facets/openobject.rb +261 -0
  826. data/lib/facets/opesc.rb +60 -0
  827. data/lib/facets/orderedhash.rb +37 -0
  828. data/lib/facets/ostruct.rb +222 -0
  829. data/lib/facets/overload.rb +94 -0
  830. data/lib/facets/pathlist.rb +112 -0
  831. data/lib/facets/pathname.rb +112 -0
  832. data/lib/facets/pool.rb +91 -0
  833. data/lib/facets/pqueue.rb +449 -0
  834. data/lib/facets/proc.rb +6 -0
  835. data/lib/facets/proc/bind.rb +22 -0
  836. data/lib/facets/proc/compose.rb +42 -0
  837. data/lib/facets/proc/curry.rb +31 -0
  838. data/lib/facets/proc/partial.rb +37 -0
  839. data/lib/facets/proc/to_method.rb +33 -0
  840. data/lib/facets/proc/update.rb +9 -0
  841. data/lib/facets/progressbar.rb +253 -0
  842. data/lib/facets/prototype.rb +88 -0
  843. data/lib/facets/random.rb +448 -0
  844. data/lib/facets/range.rb +6 -0
  845. data/lib/facets/range/combine.rb +47 -0
  846. data/lib/facets/range/overlap.rb +13 -0
  847. data/lib/facets/range/to_r.rb +26 -0
  848. data/lib/facets/range/umbrella.rb +1 -0
  849. data/lib/facets/range/within.rb +66 -0
  850. data/lib/facets/rbconfig.rb +45 -0
  851. data/lib/facets/rbsystem.rb +222 -0
  852. data/lib/facets/recorder.rb +109 -0
  853. data/lib/facets/reference.rb +99 -0
  854. data/lib/facets/reflection.rb +98 -0
  855. data/lib/facets/regexp.rb +5 -0
  856. data/lib/facets/regexp/arity.rb +17 -0
  857. data/lib/facets/regexp/to_re.rb +28 -0
  858. data/lib/facets/registerable.rb +35 -0
  859. data/lib/facets/ruby.rb +485 -0
  860. data/lib/facets/rwdelegator.rb +74 -0
  861. data/lib/facets/semaphore.rb +92 -0
  862. data/lib/{more/facets → facets}/set.rb +0 -0
  863. data/lib/facets/settings.rb +248 -0
  864. data/lib/facets/shellwords.rb +89 -0
  865. data/lib/facets/snapshot.rb +209 -0
  866. data/lib/facets/stackable.rb +86 -0
  867. data/lib/facets/string.rb +16 -0
  868. data/lib/facets/string/align.rb +106 -0
  869. data/lib/facets/string/bracket.rb +105 -0
  870. data/lib/facets/string/camelcase.rb +26 -0
  871. data/lib/facets/string/capitalized.rb +46 -0
  872. data/lib/facets/string/chomp.rb +33 -0
  873. data/lib/facets/string/cleave.rb +36 -0
  874. data/lib/facets/string/divide.rb +21 -0
  875. data/lib/facets/string/fold.rb +39 -0
  876. data/lib/facets/string/interpolate.rb +20 -0
  877. data/lib/facets/string/line_wrap.rb +21 -0
  878. data/lib/facets/string/mscan.rb +19 -0
  879. data/lib/{core/facets → facets}/string/natcmp.rb +0 -0
  880. data/lib/facets/string/nchar.rb +28 -0
  881. data/lib/facets/string/range.rb +77 -0
  882. data/lib/facets/string/rewrite.rb +28 -0
  883. data/lib/facets/string/shatter.rb +22 -0
  884. data/lib/facets/string/snakecase.rb +21 -0
  885. data/lib/facets/string/splice.rb +25 -0
  886. data/lib/facets/string/stylize.rb +73 -0
  887. data/lib/facets/string/subtract.rb +14 -0
  888. data/lib/facets/string/tab.rb +103 -0
  889. data/lib/facets/string/titlecase.rb +15 -0
  890. data/lib/facets/string/to_re.rb +26 -0
  891. data/lib/facets/string/to_time.rb +23 -0
  892. data/lib/facets/string/underscore.rb +28 -0
  893. data/lib/facets/string/words.rb +173 -0
  894. data/lib/facets/string/xor.rb +22 -0
  895. data/lib/facets/style.rb +235 -0
  896. data/lib/facets/succ.rb +44 -0
  897. data/lib/facets/symbol.rb +5 -0
  898. data/lib/facets/symbol/chomp.rb +24 -0
  899. data/lib/facets/symbol/generate.rb +24 -0
  900. data/lib/facets/symbol/not.rb +29 -0
  901. data/lib/facets/syncarray.rb +114 -0
  902. data/lib/facets/synchash.rb +157 -0
  903. data/lib/facets/thread.rb +51 -0
  904. data/lib/facets/time.rb +6 -0
  905. data/lib/facets/time/ago.rb +1 -0
  906. data/lib/facets/time/change.rb +99 -0
  907. data/lib/{core/facets → facets}/time/elapse.rb +0 -0
  908. data/lib/facets/time/hence.rb +56 -0
  909. data/lib/facets/time/set.rb +1 -0
  910. data/lib/facets/time/stamp.rb +46 -0
  911. data/lib/facets/timer.rb +274 -0
  912. data/lib/facets/times.rb +431 -0
  913. data/lib/facets/to_hash.rb +87 -0
  914. data/lib/facets/tracepoint.rb +209 -0
  915. data/lib/facets/tuple.rb +325 -0
  916. data/lib/facets/typecast.rb +260 -0
  917. data/lib/facets/unboundmethod.rb +4 -0
  918. data/lib/{core/facets → facets}/unboundmethod/arguments.rb +0 -0
  919. data/lib/facets/uninheritable.rb +50 -0
  920. data/lib/facets/uploadutils.rb +464 -0
  921. data/lib/facets/uri.rb +249 -0
  922. data/lib/facets/version.rb +122 -0
  923. data/lib/facets/xmlhash.rb +112 -0
  924. data/lib/facets/xoxo.rb +259 -0
  925. data/lib/facets/yaml.rb +66 -0
  926. data/lib/facets/ziputils.rb +349 -0
  927. data/log/Changelog.txt +314 -0
  928. data/log/Fixme.txt +7 -13
  929. data/log/Testlog.txt +202 -185
  930. data/log/Todo.txt +177 -257
  931. data/meta/contact +1 -0
  932. data/meta/corelibs +49 -0
  933. data/meta/created +1 -0
  934. data/meta/download +1 -0
  935. data/meta/homepage +1 -0
  936. data/meta/mailinglist +1 -0
  937. data/meta/project.yaml +3 -14
  938. data/meta/slogan +1 -0
  939. data/meta/unixname +1 -0
  940. data/meta/version +1 -0
  941. data/script/conflicts +38 -0
  942. data/script/document +231 -0
  943. data/script/methods +60 -0
  944. data/script/test +37 -0
  945. data/setup.rb +1478 -0
  946. data/test/array/test_delete.rb +30 -0
  947. data/test/array/test_indexable.rb +118 -0
  948. data/test/array/test_merge.rb +22 -0
  949. data/test/{core/array → array}/test_only.rb +0 -0
  950. data/test/array/test_pad.rb +33 -0
  951. data/test/array/test_product.rb +25 -0
  952. data/test/array/test_rotate.rb +23 -0
  953. data/test/array/test_select.rb +17 -0
  954. data/test/{core/array → array}/test_stackable.rb +0 -0
  955. data/test/binding/test_caller.rb +44 -0
  956. data/test/binding/test_defined.rb +18 -0
  957. data/test/binding/test_local_variables.rb +18 -0
  958. data/test/binding/test_opvars.rb +24 -0
  959. data/test/binding/test_self.rb +18 -0
  960. data/test/class/test_descendents.rb +14 -0
  961. data/test/comparable/test_bound.rb +41 -0
  962. data/test/comparable/test_cmp.rb +35 -0
  963. data/test/comparable/test_comparable.rb +52 -0
  964. data/test/dir/test_ascend.rb +40 -0
  965. data/test/dir/test_descend.rb +25 -0
  966. data/test/dir/test_multiglob.rb +41 -0
  967. data/test/dir/test_parent.rb +11 -0
  968. data/test/dir/test_recurse.rb +41 -0
  969. data/test/enumerable/test_cluster_by.rb +22 -0
  970. data/test/enumerable/test_collect.rb +39 -0
  971. data/test/enumerable/test_each_by.rb +55 -0
  972. data/test/enumerable/test_inject.rb +18 -0
  973. data/test/enumerable/test_mash.rb +38 -0
  974. data/test/enumerable/test_occur.rb +15 -0
  975. data/test/{core/enumerable → enumerable}/test_probability.rb +0 -0
  976. data/test/enumerable/test_uniq_by.rb +13 -0
  977. data/test/exception/test_exception.rb +17 -0
  978. data/test/file/test_file.rb +161 -0
  979. data/test/filetest/test_filetest.rb +10 -0
  980. data/test/hash/test_alias.rb +16 -0
  981. data/test/hash/test_at.rb +13 -0
  982. data/test/hash/test_autonew.rb +11 -0
  983. data/test/hash/test_collate.rb +33 -0
  984. data/test/hash/test_delete.rb +28 -0
  985. data/test/hash/test_insert.rb +13 -0
  986. data/test/hash/test_inverse.rb +15 -0
  987. data/test/hash/test_keys.rb +24 -0
  988. data/test/hash/test_mash.rb +20 -0
  989. data/test/hash/test_merge.rb +14 -0
  990. data/test/hash/test_op.rb +42 -0
  991. data/test/hash/test_rekey.rb +41 -0
  992. data/test/hash/test_rekey2.rb +37 -0
  993. data/test/hash/test_select.rb +35 -0
  994. data/test/hash/test_stringify_keys.rb +21 -0
  995. data/test/hash/test_swap.rb +11 -0
  996. data/test/hash/test_symbolize_keys.rb +20 -0
  997. data/test/hash/test_traverse.rb +22 -0
  998. data/test/hash/test_update.rb +40 -0
  999. data/test/{core/hash → hash}/test_weave.rb +0 -0
  1000. data/test/hash/test_zipnew.rb +13 -0
  1001. data/test/integer/test_bitmask.rb +53 -0
  1002. data/test/integer/test_factorial.rb +15 -0
  1003. data/test/integer/test_multiple.rb +14 -0
  1004. data/test/integer/test_of.rb +19 -0
  1005. data/test/integer/test_ordinal.rb +14 -0
  1006. data/test/kernel/test_as.rb +50 -0
  1007. data/test/kernel/test_attr_singleton.rb +41 -0
  1008. data/test/kernel/test_callstack.rb +10 -0
  1009. data/test/kernel/test_constant.rb +18 -0
  1010. data/test/kernel/test_deepcopy.rb +27 -0
  1011. data/test/kernel/test_here.rb +15 -0
  1012. data/test/kernel/test_in.rb +11 -0
  1013. data/test/kernel/test_instance.rb +24 -0
  1014. data/test/kernel/test_not_nil.rb +13 -0
  1015. data/test/{core/kernel → kernel}/test_object.rb +0 -0
  1016. data/test/kernel/test_populate.rb +46 -0
  1017. data/test/kernel/test_resc.rb +12 -0
  1018. data/test/{core/kernel → kernel}/test_returning.rb +0 -0
  1019. data/test/{core/kernel → kernel}/test_silence.rb +0 -0
  1020. data/test/kernel/test_val.rb +27 -0
  1021. data/test/{core/matchdata → matchdata}/test_match.rb +0 -0
  1022. data/test/matchdata/test_matchset.rb +21 -0
  1023. data/test/{core/module → module}/test_abstract.rb +0 -0
  1024. data/test/module/test_alias.rb +44 -0
  1025. data/test/module/test_ancestor.rb +11 -0
  1026. data/test/{core/module → module}/test_clone.rb +0 -0
  1027. data/test/module/test_nesting.rb +38 -0
  1028. data/test/module/test_op.rb +44 -0
  1029. data/test/module/test_pathize.rb +15 -0
  1030. data/test/module/test_revise.rb +174 -0
  1031. data/test/numeric/test_approx.rb +13 -0
  1032. data/test/numeric/test_distance.rb +13 -0
  1033. data/test/numeric/test_round.rb +49 -0
  1034. data/test/proc/test_bind.rb +26 -0
  1035. data/test/proc/test_compose.rb +20 -0
  1036. data/test/proc/test_curry.rb +25 -0
  1037. data/test/proc/test_partial.rb +27 -0
  1038. data/test/proc/test_to_method.rb +26 -0
  1039. data/test/range/test_combine.rb +18 -0
  1040. data/test/range/test_overlap.rb +15 -0
  1041. data/test/range/test_to_r.rb +17 -0
  1042. data/test/range/test_within.rb +36 -0
  1043. data/test/regexp/test_arity.rb +17 -0
  1044. data/test/regexp/test_to_re.rb +17 -0
  1045. data/test/{core/string → string}/test_align.rb +0 -0
  1046. data/test/{core/string → string}/test_bracket.rb +0 -0
  1047. data/test/string/test_camelcase.rb +42 -0
  1048. data/test/string/test_capitalized.rb +27 -0
  1049. data/test/string/test_cleave.rb +32 -0
  1050. data/test/string/test_divide.rb +14 -0
  1051. data/test/string/test_fold.rb +18 -0
  1052. data/test/{core/string → string}/test_interpolate.rb +0 -0
  1053. data/test/string/test_line_wrap.rb +12 -0
  1054. data/test/string/test_mscan.rb +15 -0
  1055. data/test/{core/string → string}/test_natcmp.rb +0 -0
  1056. data/test/string/test_nchar.rb +14 -0
  1057. data/test/string/test_range.rb +23 -0
  1058. data/test/string/test_shatter.rb +14 -0
  1059. data/test/string/test_snakecase.rb +14 -0
  1060. data/test/string/test_stylize.rb +52 -0
  1061. data/test/string/test_subtract.rb +13 -0
  1062. data/test/string/test_tab.rb +234 -0
  1063. data/test/string/test_titlecase.rb +13 -0
  1064. data/test/string/test_to_re.rb +27 -0
  1065. data/test/string/test_to_time.rb +24 -0
  1066. data/test/string/test_underscore.rb +13 -0
  1067. data/test/string/test_words.rb +82 -0
  1068. data/test/string/test_xor.rb +13 -0
  1069. data/test/symbol/test_chomp.rb +15 -0
  1070. data/test/symbol/test_generate.rb +20 -0
  1071. data/test/symbol/test_not.rb +13 -0
  1072. data/test/{core/test_1stclassmethod.rb → test_1stclassmethod.rb} +0 -0
  1073. data/test/test_advisable.rb +71 -0
  1074. data/test/test_annotations.rb +120 -0
  1075. data/test/{more/test_ansicode.rb → test_ansicode.rb} +0 -0
  1076. data/test/test_arguments.rb +56 -0
  1077. data/test/{class/test_association.rb → test_association.rb} +0 -0
  1078. data/test/{class/test_autoarray.rb → test_autoarray.rb} +0 -0
  1079. data/test/{class/test_basicobject.rb → test_basicobject.rb} +0 -0
  1080. data/test/{more/test_bbcode.rb → test_bbcode.rb} +0 -0
  1081. data/test/{mixin/test_binreadable.rb → test_binreadable.rb} +0 -0
  1082. data/test/test_blank.rb +12 -0
  1083. data/test/{core/test_boolean.rb → test_boolean.rb} +0 -0
  1084. data/test/test_buildable.rb +73 -0
  1085. data/test/{more/test_bytes.rb → test_bytes.rb} +0 -0
  1086. data/test/test_cattr.rb +47 -0
  1087. data/test/{more/test_class_extension.rb → test_class_extension.rb} +0 -0
  1088. data/test/{more/test_classmethods.rb → test_classmethods.rb} +0 -0
  1089. data/test/{mixin/test_cloneable.rb → test_cloneable.rb} +0 -0
  1090. data/test/test_command.rb +71 -0
  1091. data/test/{more/test_continuation.rb → test_continuation.rb} +0 -0
  1092. data/test/{class/test_coroutine.rb → test_coroutine.rb} +0 -0
  1093. data/test/{more/test_crypt.rb → test_crypt.rb} +0 -0
  1094. data/test/{more/test_date.rb → test_date.rb} +0 -0
  1095. data/test/{more/test_dependency.rb → test_dependency.rb} +0 -0
  1096. data/test/{class/test_dictionary.rb → test_dictionary.rb} +0 -0
  1097. data/test/test_elementor.rb +39 -0
  1098. data/test/test_elementwise.rb +25 -0
  1099. data/test/{mixin/test_enumerablepass.rb → test_enumerablepass.rb} +0 -0
  1100. data/test/test_equatable.rb +42 -0
  1101. data/test/{core/test_functor.rb → test_functor.rb} +0 -0
  1102. data/test/{more/test_getoptlong.rb → test_getoptlong.rb} +0 -0
  1103. data/test/{class/test_infinity.rb → test_infinity.rb} +0 -0
  1104. data/test/{more/test_inheritor.rb → test_inheritor.rb} +0 -0
  1105. data/test/test_instantiable.rb +37 -0
  1106. data/test/{more/test_instantise.rb → test_instantise.rb} +0 -0
  1107. data/test/{class/test_interval.rb → test_interval.rb} +0 -0
  1108. data/test/{class/test_linkedlist.rb → test_linkedlist.rb} +0 -0
  1109. data/test/{class/test_lrucache.rb → test_lrucache.rb} +0 -0
  1110. data/test/{more/test_memoize.rb → test_memoize.rb} +0 -0
  1111. data/test/test_metaid.rb +39 -0
  1112. data/test/test_methodspace.rb +78 -0
  1113. data/test/{more/test_multipliers.rb → test_multipliers.rb} +0 -0
  1114. data/test/{mixin/test_multiton.rb → test_multiton.rb} +0 -0
  1115. data/test/{class/test_opencascade.rb → test_opencascade.rb} +0 -0
  1116. data/test/{class/test_openobject.rb → test_openobject.rb} +0 -0
  1117. data/test/{more/test_ostruct.rb → test_ostruct.rb} +0 -0
  1118. data/test/test_overload.rb +120 -0
  1119. data/test/{more/test_prototype.rb → test_prototype.rb} +0 -0
  1120. data/test/{more/test_random.rb → test_random.rb} +0 -0
  1121. data/test/{class/test_recorder.rb → test_recorder.rb} +0 -0
  1122. data/test/test_ruby.rb +198 -0
  1123. data/test/test_ruby/array/test_combination.rb +29 -0
  1124. data/test/test_ruby/array/test_permutation.rb +14 -0
  1125. data/test/test_ruby/array/test_product.rb +23 -0
  1126. data/test/test_ruby/kernel/test_tap.rb +19 -0
  1127. data/test/test_ruby/symbol/test_succ.rb +13 -0
  1128. data/test/{more/test_snapshot.rb → test_snapshot.rb} +0 -0
  1129. data/test/test_style.rb +50 -0
  1130. data/test/test_succ.rb +35 -0
  1131. data/test/{class/test_syncarray.rb → test_syncarray.rb} +0 -0
  1132. data/test/{class/test_synchash.rb → test_synchash.rb} +0 -0
  1133. data/test/test_thread.rb +22 -0
  1134. data/test/{class/test_timer.rb → test_timer.rb} +0 -0
  1135. data/test/{more/test_times.rb → test_times.rb} +0 -0
  1136. data/test/test_to_hash.rb +58 -0
  1137. data/test/{class/test_tuple.rb → test_tuple.rb} +0 -0
  1138. data/test/test_typecast.rb +54 -0
  1139. data/test/{mixin/test_uninheritable.rb → test_uninheritable.rb} +0 -0
  1140. data/test/test_uri.rb +36 -0
  1141. data/test/test_xoxo.rb +274 -0
  1142. data/test/time/test_change.rb +15 -0
  1143. data/test/time/test_elapse.rb +13 -0
  1144. data/test/time/test_stamp.rb +28 -0
  1145. metadata +1503 -1127
  1146. data/Rakefile +0 -26
  1147. data/lib/class/facets/association.rb +0 -157
  1148. data/lib/class/facets/autoarray.rb +0 -59
  1149. data/lib/class/facets/basicobject.rb +0 -234
  1150. data/lib/class/facets/buildingblock.rb +0 -219
  1151. data/lib/class/facets/cachedelegator.rb +0 -93
  1152. data/lib/class/facets/coroutine.rb +0 -120
  1153. data/lib/class/facets/dictionary.rb +0 -435
  1154. data/lib/class/facets/downloader.rb +0 -279
  1155. data/lib/class/facets/filelist.rb +0 -493
  1156. data/lib/class/facets/fileshell.rb +0 -198
  1157. data/lib/class/facets/hashbuilder.rb +0 -97
  1158. data/lib/class/facets/heap.rb +0 -27
  1159. data/lib/class/facets/infinity.rb +0 -183
  1160. data/lib/class/facets/interval.rb +0 -266
  1161. data/lib/class/facets/ioredirect.rb +0 -133
  1162. data/lib/class/facets/linkedlist.rb +0 -214
  1163. data/lib/class/facets/lrucache.rb +0 -156
  1164. data/lib/class/facets/minitar.rb +0 -999
  1165. data/lib/class/facets/nackclass.rb +0 -43
  1166. data/lib/class/facets/nullclass.rb +0 -79
  1167. data/lib/class/facets/opencascade.rb +0 -92
  1168. data/lib/class/facets/opencollection.rb +0 -46
  1169. data/lib/class/facets/openhash.rb +0 -41
  1170. data/lib/class/facets/openobject.rb +0 -241
  1171. data/lib/class/facets/orderedhash.rb +0 -42
  1172. data/lib/class/facets/pathlist.rb +0 -106
  1173. data/lib/class/facets/pool.rb +0 -97
  1174. data/lib/class/facets/pqueue.rb +0 -468
  1175. data/lib/class/facets/progressbar.rb +0 -245
  1176. data/lib/class/facets/recorder.rb +0 -97
  1177. data/lib/class/facets/reference.rb +0 -100
  1178. data/lib/class/facets/rwdelegator.rb +0 -79
  1179. data/lib/class/facets/semaphore.rb +0 -97
  1180. data/lib/class/facets/syncarray.rb +0 -122
  1181. data/lib/class/facets/synchash.rb +0 -149
  1182. data/lib/class/facets/timer.rb +0 -247
  1183. data/lib/class/facets/tuple.rb +0 -310
  1184. data/lib/class/facets/version.rb +0 -127
  1185. data/lib/core/facets.rb +0 -1
  1186. data/lib/core/facets/1stclassmethod.rb +0 -117
  1187. data/lib/core/facets/array.rb +0 -12
  1188. data/lib/core/facets/array/conjoin.rb +0 -47
  1189. data/lib/core/facets/array/contains.rb +0 -1
  1190. data/lib/core/facets/array/delete.rb +0 -57
  1191. data/lib/core/facets/array/delete_unless.rb +0 -1
  1192. data/lib/core/facets/array/delete_values.rb +0 -1
  1193. data/lib/core/facets/array/delete_values_at.rb +0 -1
  1194. data/lib/core/facets/array/each_iteration.rb +0 -1
  1195. data/lib/core/facets/array/first.rb +0 -1
  1196. data/lib/core/facets/array/indexable.rb +0 -132
  1197. data/lib/core/facets/array/join_sentence.rb +0 -1
  1198. data/lib/core/facets/array/last.rb +0 -1
  1199. data/lib/core/facets/array/merge.rb +0 -23
  1200. data/lib/core/facets/array/only.rb +0 -20
  1201. data/lib/core/facets/array/pad.rb +0 -45
  1202. data/lib/core/facets/array/poke.rb +0 -1
  1203. data/lib/core/facets/array/pull.rb +0 -1
  1204. data/lib/core/facets/array/rotate.rb +0 -41
  1205. data/lib/core/facets/array/select.rb +0 -15
  1206. data/lib/core/facets/array/splice.rb +0 -30
  1207. data/lib/core/facets/array/stackable.rb +0 -30
  1208. data/lib/core/facets/array/store.rb +0 -1
  1209. data/lib/core/facets/array/to_b.rb +0 -1
  1210. data/lib/core/facets/array/to_h.rb +0 -1
  1211. data/lib/core/facets/array/to_path.rb +0 -1
  1212. data/lib/core/facets/binding.rb +0 -7
  1213. data/lib/core/facets/binding/__DIR__.rb +0 -1
  1214. data/lib/core/facets/binding/__FILE__.rb +0 -1
  1215. data/lib/core/facets/binding/__LINE__.rb +0 -1
  1216. data/lib/core/facets/binding/__callee__.rb +0 -1
  1217. data/lib/core/facets/binding/__method__.rb +0 -1
  1218. data/lib/core/facets/binding/call_stack.rb +0 -1
  1219. data/lib/core/facets/binding/called.rb +0 -1
  1220. data/lib/core/facets/binding/caller.rb +0 -72
  1221. data/lib/core/facets/binding/defined.rb +0 -10
  1222. data/lib/core/facets/binding/eval.rb +0 -17
  1223. data/lib/core/facets/binding/here.rb +0 -1
  1224. data/lib/core/facets/binding/included.rb +0 -1
  1225. data/lib/core/facets/binding/local_variables.rb +0 -1
  1226. data/lib/core/facets/binding/methodname.rb +0 -1
  1227. data/lib/core/facets/binding/op_fetch.rb +0 -1
  1228. data/lib/core/facets/binding/self.rb +0 -12
  1229. data/lib/core/facets/binding/vars.rb +0 -41
  1230. data/lib/core/facets/boolean.rb +0 -161
  1231. data/lib/core/facets/class.rb +0 -6
  1232. data/lib/core/facets/class/cattr.rb +0 -1
  1233. data/lib/core/facets/class/cattr_accessor.rb +0 -1
  1234. data/lib/core/facets/class/cattr_reader.rb +0 -1
  1235. data/lib/core/facets/class/cattr_writer.rb +0 -1
  1236. data/lib/core/facets/class/class_load.rb +0 -1
  1237. data/lib/core/facets/class/class_require.rb +0 -1
  1238. data/lib/core/facets/class/descendents.rb +0 -41
  1239. data/lib/core/facets/class/initializer.rb +0 -36
  1240. data/lib/core/facets/class/mattr.rb +0 -1
  1241. data/lib/core/facets/class/mattr_accessor.rb +0 -1
  1242. data/lib/core/facets/class/mattr_reader.rb +0 -1
  1243. data/lib/core/facets/class/mattr_writer.rb +0 -1
  1244. data/lib/core/facets/class/remove_descendents.rb +0 -19
  1245. data/lib/core/facets/class/remove_subclasses.rb +0 -1
  1246. data/lib/core/facets/class/subclasses.rb +0 -1
  1247. data/lib/core/facets/class/to_proc.rb +0 -1
  1248. data/lib/core/facets/comparable.rb +0 -2
  1249. data/lib/core/facets/comparable/at_least.rb +0 -1
  1250. data/lib/core/facets/comparable/at_most.rb +0 -1
  1251. data/lib/core/facets/comparable/bound.rb +0 -58
  1252. data/lib/core/facets/comparable/cap.rb +0 -1
  1253. data/lib/core/facets/comparable/clip.rb +0 -1
  1254. data/lib/core/facets/comparable/cmp.rb +0 -92
  1255. data/lib/core/facets/conversion.rb +0 -495
  1256. data/lib/core/facets/dir.rb +0 -4
  1257. data/lib/core/facets/dir/ancestor.rb +0 -1
  1258. data/lib/core/facets/dir/ascend.rb +0 -1
  1259. data/lib/core/facets/dir/descend.rb +0 -1
  1260. data/lib/core/facets/dir/ls_r.rb +0 -1
  1261. data/lib/core/facets/dir/multiglob_r.rb +0 -1
  1262. data/lib/core/facets/dir/parent.rb +0 -12
  1263. data/lib/core/facets/dir/recurse.rb +0 -28
  1264. data/lib/core/facets/dir/traverse.rb +0 -56
  1265. data/lib/core/facets/enumerable.rb +0 -9
  1266. data/lib/core/facets/enumerable/cart.rb +0 -1
  1267. data/lib/core/facets/enumerable/cartesian.rb +0 -62
  1268. data/lib/core/facets/enumerable/cartesian_product.rb +0 -1
  1269. data/lib/core/facets/enumerable/cluster_by.rb +0 -1
  1270. data/lib/core/facets/enumerable/collate.rb +0 -0
  1271. data/lib/core/facets/enumerable/collect.rb +0 -164
  1272. data/lib/core/facets/enumerable/collect_if.rb +0 -1
  1273. data/lib/core/facets/enumerable/collect_with_index.rb +0 -1
  1274. data/lib/core/facets/enumerable/combination.rb +0 -114
  1275. data/lib/core/facets/enumerable/combinations.rb +0 -1
  1276. data/lib/core/facets/enumerable/combos.rb +0 -48
  1277. data/lib/core/facets/enumerable/commonality.rb +0 -1
  1278. data/lib/core/facets/enumerable/compact_collect.rb +0 -1
  1279. data/lib/core/facets/enumerable/compact_map.rb +0 -1
  1280. data/lib/core/facets/enumerable/count.rb +0 -175
  1281. data/lib/core/facets/enumerable/divide.rb +0 -1
  1282. data/lib/core/facets/enumerable/duplicates.rb +0 -1
  1283. data/lib/core/facets/enumerable/each.rb +0 -86
  1284. data/lib/core/facets/enumerable/each_by.rb +0 -1
  1285. data/lib/core/facets/enumerable/each_combination.rb +0 -1
  1286. data/lib/core/facets/enumerable/each_combo.rb +0 -1
  1287. data/lib/core/facets/enumerable/each_pair.rb +0 -1
  1288. data/lib/core/facets/enumerable/each_permutation.rb +0 -1
  1289. data/lib/core/facets/enumerable/each_unique_pair.rb +0 -1
  1290. data/lib/core/facets/enumerable/eachn.rb +0 -1
  1291. data/lib/core/facets/enumerable/entropy.rb +0 -1
  1292. data/lib/core/facets/enumerable/filter_collect.rb +0 -1
  1293. data/lib/core/facets/enumerable/filter_map.rb +0 -1
  1294. data/lib/core/facets/enumerable/frequency.rb +0 -1
  1295. data/lib/core/facets/enumerable/graph.rb +0 -1
  1296. data/lib/core/facets/enumerable/group_by.rb +0 -1
  1297. data/lib/core/facets/enumerable/ideal_entropy.rb +0 -1
  1298. data/lib/core/facets/enumerable/inject.rb +0 -1
  1299. data/lib/core/facets/enumerable/injecting.rb +0 -1
  1300. data/lib/core/facets/enumerable/map_if.rb +0 -1
  1301. data/lib/core/facets/enumerable/map_send.rb +0 -1
  1302. data/lib/core/facets/enumerable/map_with_index.rb +0 -1
  1303. data/lib/core/facets/enumerable/mash.rb +0 -50
  1304. data/lib/core/facets/enumerable/mode.rb +0 -1
  1305. data/lib/core/facets/enumerable/modulate.rb +0 -1
  1306. data/lib/core/facets/enumerable/none.rb +0 -1
  1307. data/lib/core/facets/enumerable/nonuniq.rb +0 -1
  1308. data/lib/core/facets/enumerable/occur.rb +0 -1
  1309. data/lib/core/facets/enumerable/one.rb +0 -1
  1310. data/lib/core/facets/enumerable/op_pow.rb +0 -1
  1311. data/lib/core/facets/enumerable/partition_by.rb +0 -1
  1312. data/lib/core/facets/enumerable/permutation.rb +0 -101
  1313. data/lib/core/facets/enumerable/permutation_number.rb +0 -1
  1314. data/lib/core/facets/enumerable/permute.rb +0 -1
  1315. data/lib/core/facets/enumerable/probability.rb +0 -144
  1316. data/lib/core/facets/enumerable/split.rb +0 -113
  1317. data/lib/core/facets/enumerable/sum.rb +0 -1
  1318. data/lib/core/facets/enumerable/to_h.rb +0 -1
  1319. data/lib/core/facets/enumerable/to_hash.rb +0 -1
  1320. data/lib/core/facets/enumerable/uniq_by.rb +0 -1
  1321. data/lib/core/facets/exception/detail.rb +0 -19
  1322. data/lib/core/facets/facets.rb +0 -49
  1323. data/lib/core/facets/file.rb +0 -6
  1324. data/lib/core/facets/file/append.rb +0 -1
  1325. data/lib/core/facets/file/create.rb +0 -1
  1326. data/lib/core/facets/file/null.rb +0 -20
  1327. data/lib/core/facets/file/read.rb +0 -29
  1328. data/lib/core/facets/file/read_binary.rb +0 -1
  1329. data/lib/core/facets/file/read_list.rb +0 -1
  1330. data/lib/core/facets/file/rewrite.rb +0 -1
  1331. data/lib/core/facets/file/rootname.rb +0 -22
  1332. data/lib/core/facets/file/sanitize.rb +0 -14
  1333. data/lib/core/facets/file/split_all.rb +0 -19
  1334. data/lib/core/facets/file/write.rb +0 -113
  1335. data/lib/core/facets/file/writelines.rb +0 -1
  1336. data/lib/core/facets/filetest.rb +0 -1
  1337. data/lib/core/facets/filetest/root.rb +0 -16
  1338. data/lib/core/facets/float.rb +0 -1
  1339. data/lib/core/facets/float/round.rb +0 -8
  1340. data/lib/core/facets/float/round_at.rb +0 -1
  1341. data/lib/core/facets/float/round_off.rb +0 -1
  1342. data/lib/core/facets/float/round_to.rb +0 -1
  1343. data/lib/core/facets/functor.rb +0 -64
  1344. data/lib/core/facets/hash.rb +0 -24
  1345. data/lib/core/facets/hash/alias.rb +0 -28
  1346. data/lib/core/facets/hash/at.rb +0 -7
  1347. data/lib/core/facets/hash/autonew.rb +0 -26
  1348. data/lib/core/facets/hash/collate.rb +0 -44
  1349. data/lib/core/facets/hash/delete.rb +0 -46
  1350. data/lib/core/facets/hash/delete_at.rb +0 -1
  1351. data/lib/core/facets/hash/delete_unless.rb +0 -1
  1352. data/lib/core/facets/hash/delete_values.rb +0 -1
  1353. data/lib/core/facets/hash/delete_values_at.rb +0 -1
  1354. data/lib/core/facets/hash/diff.rb +0 -15
  1355. data/lib/core/facets/hash/each_with_key.rb +0 -12
  1356. data/lib/core/facets/hash/graph.rb +0 -1
  1357. data/lib/core/facets/hash/has_keys.rb +0 -31
  1358. data/lib/core/facets/hash/has_only_keys.rb +0 -1
  1359. data/lib/core/facets/hash/insert.rb +0 -19
  1360. data/lib/core/facets/hash/inverse.rb +0 -27
  1361. data/lib/core/facets/hash/join.rb +0 -14
  1362. data/lib/core/facets/hash/mash.rb +0 -1
  1363. data/lib/core/facets/hash/op.rb +0 -97
  1364. data/lib/core/facets/hash/op_and.rb +0 -1
  1365. data/lib/core/facets/hash/op_div.rb +0 -10
  1366. data/lib/core/facets/hash/op_lshift.rb +0 -1
  1367. data/lib/core/facets/hash/op_minus.rb +0 -1
  1368. data/lib/core/facets/hash/op_mul.rb +0 -1
  1369. data/lib/core/facets/hash/op_or.rb +0 -1
  1370. data/lib/core/facets/hash/op_plus.rb +0 -1
  1371. data/lib/core/facets/hash/pairs_at.rb +0 -15
  1372. data/lib/core/facets/hash/rekey.rb +0 -58
  1373. data/lib/core/facets/hash/replace_each.rb +0 -1
  1374. data/lib/core/facets/hash/reverse_merge.rb +0 -29
  1375. data/lib/core/facets/hash/reverse_update.rb +0 -1
  1376. data/lib/core/facets/hash/swap.rb +0 -36
  1377. data/lib/core/facets/hash/to_h.rb +0 -1
  1378. data/lib/core/facets/hash/to_proc.rb +0 -1
  1379. data/lib/core/facets/hash/to_proc_with_reponse.rb +0 -1
  1380. data/lib/core/facets/hash/to_struct.rb +0 -1
  1381. data/lib/core/facets/hash/traverse.rb +0 -41
  1382. data/lib/core/facets/hash/update.rb +0 -63
  1383. data/lib/core/facets/hash/update_each.rb +0 -1
  1384. data/lib/core/facets/hash/update_keys.rb +0 -1
  1385. data/lib/core/facets/hash/update_values.rb +0 -1
  1386. data/lib/core/facets/hash/zipnew.rb +0 -18
  1387. data/lib/core/facets/indexable.rb +0 -241
  1388. data/lib/core/facets/integer.rb +0 -4
  1389. data/lib/core/facets/integer/bit.rb +0 -1
  1390. data/lib/core/facets/integer/clear_bit.rb +0 -1
  1391. data/lib/core/facets/integer/even.rb +0 -1
  1392. data/lib/core/facets/integer/fac.rb +0 -1
  1393. data/lib/core/facets/integer/factorial.rb +0 -29
  1394. data/lib/core/facets/integer/multiple.rb +0 -44
  1395. data/lib/core/facets/integer/odd.rb +0 -1
  1396. data/lib/core/facets/integer/of.rb +0 -22
  1397. data/lib/core/facets/integer/times_collect.rb +0 -1
  1398. data/lib/core/facets/integer/times_map.rb +0 -1
  1399. data/lib/core/facets/kernel.rb +0 -23
  1400. data/lib/core/facets/kernel/Bit.rb +0 -1
  1401. data/lib/core/facets/kernel/__DIR__.rb +0 -1
  1402. data/lib/core/facets/kernel/__assign__.rb +0 -1
  1403. data/lib/core/facets/kernel/__callee__.rb +0 -1
  1404. data/lib/core/facets/kernel/__class__.rb +0 -1
  1405. data/lib/core/facets/kernel/__get__.rb +0 -1
  1406. data/lib/core/facets/kernel/__method__.rb +0 -1
  1407. data/lib/core/facets/kernel/__real__.rb +0 -1
  1408. data/lib/core/facets/kernel/__set__.rb +0 -1
  1409. data/lib/core/facets/kernel/__singleton_class__.rb +0 -1
  1410. data/lib/core/facets/kernel/as.rb +0 -1
  1411. data/lib/core/facets/kernel/ask.rb +0 -26
  1412. data/lib/core/facets/kernel/assign_from.rb +0 -1
  1413. data/lib/core/facets/kernel/assign_with.rb +0 -1
  1414. data/lib/core/facets/kernel/bitmask.rb +0 -1
  1415. data/lib/core/facets/kernel/bool.rb +0 -1
  1416. data/lib/core/facets/kernel/call_stack.rb +0 -1
  1417. data/lib/core/facets/kernel/called.rb +0 -1
  1418. data/lib/core/facets/kernel/callee.rb +0 -1
  1419. data/lib/core/facets/kernel/callstack.rb +0 -88
  1420. data/lib/core/facets/kernel/class_def.rb +0 -1
  1421. data/lib/core/facets/kernel/complete.rb +0 -1
  1422. data/lib/core/facets/kernel/copy.rb +0 -1
  1423. data/lib/core/facets/kernel/d.rb +0 -1
  1424. data/lib/core/facets/kernel/deep_clone.rb +0 -1
  1425. data/lib/core/facets/kernel/deep_copy.rb +0 -1
  1426. data/lib/core/facets/kernel/deepcopy.rb +0 -59
  1427. data/lib/core/facets/kernel/demo.rb +0 -1
  1428. data/lib/core/facets/kernel/dir.rb +0 -14
  1429. data/lib/core/facets/kernel/eigenclass.rb +0 -1
  1430. data/lib/core/facets/kernel/enable_warnings.rb +0 -1
  1431. data/lib/core/facets/kernel/ergo.rb +0 -40
  1432. data/lib/core/facets/kernel/false.rb +0 -1
  1433. data/lib/core/facets/kernel/fn.rb +0 -1
  1434. data/lib/core/facets/kernel/here.rb +0 -9
  1435. data/lib/core/facets/kernel/in.rb +0 -1
  1436. data/lib/core/facets/kernel/instance.rb +0 -176
  1437. data/lib/core/facets/kernel/instance_assign.rb +0 -1
  1438. data/lib/core/facets/kernel/instance_assume.rb +0 -1
  1439. data/lib/core/facets/kernel/instance_class.rb +0 -1
  1440. data/lib/core/facets/kernel/instance_exec.rb +0 -1
  1441. data/lib/core/facets/kernel/instance_send.rb +0 -1
  1442. data/lib/core/facets/kernel/instance_values.rb +0 -1
  1443. data/lib/core/facets/kernel/is.rb +0 -1
  1444. data/lib/core/facets/kernel/load_local.rb +0 -1
  1445. data/lib/core/facets/kernel/meta.rb +0 -1
  1446. data/lib/core/facets/kernel/meta_alias.rb +0 -1
  1447. data/lib/core/facets/kernel/meta_class.rb +0 -1
  1448. data/lib/core/facets/kernel/meta_def.rb +0 -1
  1449. data/lib/core/facets/kernel/meta_eval.rb +0 -1
  1450. data/lib/core/facets/kernel/metaclass.rb +0 -1
  1451. data/lib/core/facets/kernel/metaid.rb +0 -160
  1452. data/lib/core/facets/kernel/method.rb +0 -1
  1453. data/lib/core/facets/kernel/non_nil.rb +0 -1
  1454. data/lib/core/facets/kernel/not_nil.rb +0 -1
  1455. data/lib/core/facets/kernel/object.rb +0 -68
  1456. data/lib/core/facets/kernel/object_class.rb +0 -1
  1457. data/lib/core/facets/kernel/object_clone.rb +0 -1
  1458. data/lib/core/facets/kernel/object_dup.rb +0 -1
  1459. data/lib/core/facets/kernel/object_hexid.rb +0 -1
  1460. data/lib/core/facets/kernel/object_send.rb +0 -1
  1461. data/lib/core/facets/kernel/op_esc.rb +0 -62
  1462. data/lib/core/facets/kernel/p.rb +0 -1
  1463. data/lib/core/facets/kernel/populate.rb +0 -136
  1464. data/lib/core/facets/kernel/pp_call_stack.rb +0 -1
  1465. data/lib/core/facets/kernel/pp_exception.rb +0 -1
  1466. data/lib/core/facets/kernel/qua_class.rb +0 -1
  1467. data/lib/core/facets/kernel/report.rb +0 -98
  1468. data/lib/core/facets/kernel/require.rb +0 -55
  1469. data/lib/core/facets/kernel/require_all.rb +0 -1
  1470. data/lib/core/facets/kernel/require_local.rb +0 -1
  1471. data/lib/core/facets/kernel/resc.rb +0 -1
  1472. data/lib/core/facets/kernel/respond.rb +0 -23
  1473. data/lib/core/facets/kernel/respond_with_value.rb +0 -1
  1474. data/lib/core/facets/kernel/returning.rb +0 -50
  1475. data/lib/core/facets/kernel/send_as.rb +0 -1
  1476. data/lib/core/facets/kernel/set_from.rb +0 -1
  1477. data/lib/core/facets/kernel/set_with.rb +0 -1
  1478. data/lib/core/facets/kernel/silence.rb +0 -79
  1479. data/lib/core/facets/kernel/silence_stderr.rb +0 -1
  1480. data/lib/core/facets/kernel/silence_stream.rb +0 -1
  1481. data/lib/core/facets/kernel/silence_warnings.rb +0 -1
  1482. data/lib/core/facets/kernel/singleton.rb +0 -1
  1483. data/lib/core/facets/kernel/singleton_class.rb +0 -1
  1484. data/lib/core/facets/kernel/super.rb +0 -158
  1485. data/lib/core/facets/kernel/super_at.rb +0 -1
  1486. data/lib/core/facets/kernel/super_method.rb +0 -1
  1487. data/lib/core/facets/kernel/superior.rb +0 -1
  1488. data/lib/core/facets/kernel/supermethod.rb +0 -1
  1489. data/lib/core/facets/kernel/suppress.rb +0 -1
  1490. data/lib/core/facets/kernel/tap.rb +0 -34
  1491. data/lib/core/facets/kernel/this.rb +0 -1
  1492. data/lib/core/facets/kernel/to_b.rb +0 -1
  1493. data/lib/core/facets/kernel/to_bool.rb +0 -1
  1494. data/lib/core/facets/kernel/true.rb +0 -1
  1495. data/lib/core/facets/kernel/val.rb +0 -40
  1496. data/lib/core/facets/kernel/warn_with_line.rb +0 -1
  1497. data/lib/core/facets/kernel/with.rb +0 -1
  1498. data/lib/core/facets/kernel/with_accessor.rb +0 -1
  1499. data/lib/core/facets/kernel/with_reader.rb +0 -1
  1500. data/lib/core/facets/kernel/with_writer.rb +0 -1
  1501. data/lib/core/facets/kernel/withattr.rb +0 -53
  1502. data/lib/core/facets/matchdata.rb +0 -2
  1503. data/lib/core/facets/matchdata/match.rb +0 -16
  1504. data/lib/core/facets/matchdata/matchset.rb +0 -43
  1505. data/lib/core/facets/matchdata/matchtree.rb +0 -1
  1506. data/lib/core/facets/module.rb +0 -13
  1507. data/lib/core/facets/module/abstract.rb +0 -21
  1508. data/lib/core/facets/module/alias.rb +0 -139
  1509. data/lib/core/facets/module/alias_accessor.rb +0 -1
  1510. data/lib/core/facets/module/alias_method_chain.rb +0 -1
  1511. data/lib/core/facets/module/alias_module_function.rb +0 -1
  1512. data/lib/core/facets/module/alias_reader.rb +0 -1
  1513. data/lib/core/facets/module/alias_setter.rb +0 -1
  1514. data/lib/core/facets/module/alias_switcher.rb +0 -1
  1515. data/lib/core/facets/module/alias_tester.rb +0 -1
  1516. data/lib/core/facets/module/alias_toggler.rb +0 -1
  1517. data/lib/core/facets/module/alias_validator.rb +0 -1
  1518. data/lib/core/facets/module/alias_writer.rb +0 -1
  1519. data/lib/core/facets/module/all_instance_methods.rb +0 -1
  1520. data/lib/core/facets/module/ancestor.rb +0 -1
  1521. data/lib/core/facets/module/attr_accessor.rb +0 -1
  1522. data/lib/core/facets/module/attr_reader.rb +0 -1
  1523. data/lib/core/facets/module/attr_setter.rb +0 -1
  1524. data/lib/core/facets/module/attr_switcher.rb +0 -1
  1525. data/lib/core/facets/module/attr_tester.rb +0 -1
  1526. data/lib/core/facets/module/attr_toggler.rb +0 -1
  1527. data/lib/core/facets/module/attr_validator.rb +0 -1
  1528. data/lib/core/facets/module/attr_writer.rb +0 -1
  1529. data/lib/core/facets/module/basename.rb +0 -1
  1530. data/lib/core/facets/module/by_name.rb +0 -1
  1531. data/lib/core/facets/module/can.rb +0 -1
  1532. data/lib/core/facets/module/cattr.rb +0 -110
  1533. data/lib/core/facets/module/class.rb +0 -1
  1534. data/lib/core/facets/module/class_def.rb +0 -1
  1535. data/lib/core/facets/module/clone.rb +0 -50
  1536. data/lib/core/facets/module/clone_removing.rb +0 -1
  1537. data/lib/core/facets/module/clone_renaming.rb +0 -1
  1538. data/lib/core/facets/module/clone_using.rb +0 -1
  1539. data/lib/core/facets/module/conflict.rb +0 -1
  1540. data/lib/core/facets/module/dirname.rb +0 -1
  1541. data/lib/core/facets/module/include.rb +0 -179
  1542. data/lib/core/facets/module/include_and_extend.rb +0 -1
  1543. data/lib/core/facets/module/include_as.rb +0 -1
  1544. data/lib/core/facets/module/include_function_module.rb +0 -1
  1545. data/lib/core/facets/module/instance_method.rb +0 -1
  1546. data/lib/core/facets/module/instance_method_defined.rb +0 -1
  1547. data/lib/core/facets/module/integrate.rb +0 -1
  1548. data/lib/core/facets/module/is.rb +0 -1
  1549. data/lib/core/facets/module/methods.rb +0 -36
  1550. data/lib/core/facets/module/modify.rb +0 -173
  1551. data/lib/core/facets/module/modspace.rb +0 -1
  1552. data/lib/core/facets/module/module_load.rb +0 -1
  1553. data/lib/core/facets/module/module_method.rb +0 -1
  1554. data/lib/core/facets/module/module_method_defined.rb +0 -1
  1555. data/lib/core/facets/module/module_require.rb +0 -1
  1556. data/lib/core/facets/module/name.rb +0 -122
  1557. data/lib/core/facets/module/nesting.rb +0 -1
  1558. data/lib/core/facets/module/nodef.rb +0 -1
  1559. data/lib/core/facets/module/on_included.rb +0 -1
  1560. data/lib/core/facets/module/op_minus.rb +0 -1
  1561. data/lib/core/facets/module/op_mul.rb +0 -1
  1562. data/lib/core/facets/module/op_plus.rb +0 -1
  1563. data/lib/core/facets/module/private_conflict.rb +0 -1
  1564. data/lib/core/facets/module/protected_conflict.rb +0 -1
  1565. data/lib/core/facets/module/public_conflict.rb +0 -1
  1566. data/lib/core/facets/module/redef.rb +0 -1
  1567. data/lib/core/facets/module/redefine_method.rb +0 -1
  1568. data/lib/core/facets/module/redirect.rb +0 -1
  1569. data/lib/core/facets/module/redirect_method.rb +0 -1
  1570. data/lib/core/facets/module/remove.rb +0 -1
  1571. data/lib/core/facets/module/rename.rb +0 -1
  1572. data/lib/core/facets/module/rename_method.rb +0 -1
  1573. data/lib/core/facets/module/require.rb +0 -57
  1574. data/lib/core/facets/module/revisal.rb +0 -1
  1575. data/lib/core/facets/module/traits.rb +0 -146
  1576. data/lib/core/facets/module/wrap.rb +0 -1
  1577. data/lib/core/facets/module/wrap_method.rb +0 -1
  1578. data/lib/core/facets/nilclass.rb +0 -2
  1579. data/lib/core/facets/nilclass/ergo.rb +0 -1
  1580. data/lib/core/facets/nilclass/status.rb +0 -47
  1581. data/lib/core/facets/nilclass/to_bool.rb +0 -1
  1582. data/lib/core/facets/nilclass/to_f.rb +0 -1
  1583. data/lib/core/facets/nilclass/to_h.rb +0 -1
  1584. data/lib/core/facets/numeric.rb +0 -2
  1585. data/lib/core/facets/numeric/approx.rb +0 -1
  1586. data/lib/core/facets/numeric/distance.rb +0 -1
  1587. data/lib/core/facets/numeric/pred.rb +0 -1
  1588. data/lib/core/facets/numeric/round.rb +0 -78
  1589. data/lib/core/facets/numeric/round_at.rb +0 -1
  1590. data/lib/core/facets/numeric/round_to.rb +0 -1
  1591. data/lib/core/facets/numeric/succ.rb +0 -1
  1592. data/lib/core/facets/numeric/to_b.rb +0 -1
  1593. data/lib/core/facets/proc.rb +0 -4
  1594. data/lib/core/facets/proc/bind.rb +0 -64
  1595. data/lib/core/facets/proc/compose.rb +0 -41
  1596. data/lib/core/facets/proc/fn.rb +0 -12
  1597. data/lib/core/facets/proc/op_mul.rb +0 -1
  1598. data/lib/core/facets/proc/to_h.rb +0 -1
  1599. data/lib/core/facets/proc/to_method.rb +0 -1
  1600. data/lib/core/facets/proc/update.rb +0 -9
  1601. data/lib/core/facets/range.rb +0 -2
  1602. data/lib/core/facets/range/combine.rb +0 -47
  1603. data/lib/core/facets/range/overlap.rb +0 -74
  1604. data/lib/core/facets/range/to_r.rb +0 -1
  1605. data/lib/core/facets/range/to_range.rb +0 -1
  1606. data/lib/core/facets/range/umbrella.rb +0 -1
  1607. data/lib/core/facets/range/within.rb +0 -1
  1608. data/lib/core/facets/regexp.rb +0 -1
  1609. data/lib/core/facets/regexp/arity.rb +0 -17
  1610. data/lib/core/facets/regexp/to_re.rb +0 -1
  1611. data/lib/core/facets/regexp/to_regexp.rb +0 -1
  1612. data/lib/core/facets/stackable.rb +0 -86
  1613. data/lib/core/facets/string.rb +0 -20
  1614. data/lib/core/facets/string/_crypt.rb +0 -1
  1615. data/lib/core/facets/string/align.rb +0 -92
  1616. data/lib/core/facets/string/align_center.rb +0 -1
  1617. data/lib/core/facets/string/align_left.rb +0 -1
  1618. data/lib/core/facets/string/align_right.rb +0 -1
  1619. data/lib/core/facets/string/at.rb +0 -1
  1620. data/lib/core/facets/string/blank.rb +0 -16
  1621. data/lib/core/facets/string/bracket.rb +0 -103
  1622. data/lib/core/facets/string/brief.rb +0 -1
  1623. data/lib/core/facets/string/bytes.rb +0 -1
  1624. data/lib/core/facets/string/camelcase.rb +0 -1
  1625. data/lib/core/facets/string/capitalized.rb +0 -1
  1626. data/lib/core/facets/string/case.rb +0 -84
  1627. data/lib/core/facets/string/chars.rb +0 -1
  1628. data/lib/core/facets/string/cleave.rb +0 -1
  1629. data/lib/core/facets/string/cmp.rb +0 -1
  1630. data/lib/core/facets/string/crypt.rb +0 -22
  1631. data/lib/core/facets/string/dequote.rb +0 -1
  1632. data/lib/core/facets/string/divide.rb +0 -1
  1633. data/lib/core/facets/string/downcase.rb +0 -1
  1634. data/lib/core/facets/string/each_char.rb +0 -1
  1635. data/lib/core/facets/string/each_character.rb +0 -1
  1636. data/lib/core/facets/string/each_word.rb +0 -1
  1637. data/lib/core/facets/string/ends_with.rb +0 -1
  1638. data/lib/core/facets/string/expand_tabs.rb +0 -1
  1639. data/lib/core/facets/string/filter.rb +0 -60
  1640. data/lib/core/facets/string/first.rb +0 -1
  1641. data/lib/core/facets/string/fold.rb +0 -1
  1642. data/lib/core/facets/string/format.rb +0 -1
  1643. data/lib/core/facets/string/indent.rb +0 -1
  1644. data/lib/core/facets/string/index_all.rb +0 -1
  1645. data/lib/core/facets/string/indexable.rb +0 -165
  1646. data/lib/core/facets/string/interpolate.rb +0 -35
  1647. data/lib/core/facets/string/last.rb +0 -1
  1648. data/lib/core/facets/string/lchomp.rb +0 -1
  1649. data/lib/core/facets/string/line_wrap.rb +0 -1
  1650. data/lib/core/facets/string/lines.rb +0 -1
  1651. data/lib/core/facets/string/lowercase.rb +0 -1
  1652. data/lib/core/facets/string/margin.rb +0 -1
  1653. data/lib/core/facets/string/mscan.rb +0 -1
  1654. data/lib/core/facets/string/nchar.rb +0 -80
  1655. data/lib/core/facets/string/op.rb +0 -13
  1656. data/lib/core/facets/string/op_minus.rb +0 -1
  1657. data/lib/core/facets/string/outdent.rb +0 -1
  1658. data/lib/core/facets/string/partitions.rb +0 -78
  1659. data/lib/core/facets/string/peek.rb +0 -1
  1660. data/lib/core/facets/string/poke.rb +0 -1
  1661. data/lib/core/facets/string/pop.rb +0 -1
  1662. data/lib/core/facets/string/pull.rb +0 -1
  1663. data/lib/core/facets/string/push.rb +0 -1
  1664. data/lib/core/facets/string/quote.rb +0 -1
  1665. data/lib/core/facets/string/range.rb +0 -54
  1666. data/lib/core/facets/string/range_all.rb +0 -1
  1667. data/lib/core/facets/string/range_of_line.rb +0 -1
  1668. data/lib/core/facets/string/regesc.rb +0 -30
  1669. data/lib/core/facets/string/rewrite.rb +0 -1
  1670. data/lib/core/facets/string/scan.rb +0 -54
  1671. data/lib/core/facets/string/shatter.rb +0 -1
  1672. data/lib/core/facets/string/shift.rb +0 -1
  1673. data/lib/core/facets/string/snakecase.rb +0 -1
  1674. data/lib/core/facets/string/splice.rb +0 -24
  1675. data/lib/core/facets/string/sprintf.rb +0 -1
  1676. data/lib/core/facets/string/stackable.rb +0 -181
  1677. data/lib/core/facets/string/starts_with.rb +0 -1
  1678. data/lib/core/facets/string/store.rb +0 -1
  1679. data/lib/core/facets/string/succ.rb +0 -1
  1680. data/lib/core/facets/string/tab.rb +0 -1
  1681. data/lib/core/facets/string/taballto.rb +0 -1
  1682. data/lib/core/facets/string/tabs.rb +0 -99
  1683. data/lib/core/facets/string/tabto.rb +0 -1
  1684. data/lib/core/facets/string/titlecase.rb +0 -1
  1685. data/lib/core/facets/string/to_b.rb +0 -1
  1686. data/lib/core/facets/string/to_const.rb +0 -1
  1687. data/lib/core/facets/string/to_date.rb +0 -1
  1688. data/lib/core/facets/string/to_proc.rb +0 -1
  1689. data/lib/core/facets/string/to_re.rb +0 -1
  1690. data/lib/core/facets/string/to_rx.rb +0 -1
  1691. data/lib/core/facets/string/to_time.rb +0 -1
  1692. data/lib/core/facets/string/unbracket.rb +0 -1
  1693. data/lib/core/facets/string/unshift.rb +0 -1
  1694. data/lib/core/facets/string/upcase.rb +0 -1
  1695. data/lib/core/facets/string/uppercase.rb +0 -1
  1696. data/lib/core/facets/string/whitespace.rb +0 -1
  1697. data/lib/core/facets/string/word_filter.rb +0 -1
  1698. data/lib/core/facets/string/word_wrap.rb +0 -1
  1699. data/lib/core/facets/string/words.rb +0 -1
  1700. data/lib/core/facets/string/wrap.rb +0 -189
  1701. data/lib/core/facets/symbol.rb +0 -8
  1702. data/lib/core/facets/symbol/chomp.rb +0 -23
  1703. data/lib/core/facets/symbol/generate.rb +0 -20
  1704. data/lib/core/facets/symbol/lchomp.rb +0 -1
  1705. data/lib/core/facets/symbol/not.rb +0 -28
  1706. data/lib/core/facets/symbol/op_tilde.rb +0 -1
  1707. data/lib/core/facets/symbol/pad.rb +0 -1
  1708. data/lib/core/facets/symbol/shadow.rb +0 -23
  1709. data/lib/core/facets/symbol/succ.rb +0 -20
  1710. data/lib/core/facets/symbol/to_const.rb +0 -1
  1711. data/lib/core/facets/symbol/to_proc.rb +0 -39
  1712. data/lib/core/facets/time.rb +0 -3
  1713. data/lib/core/facets/time/change.rb +0 -28
  1714. data/lib/core/facets/time/stamp.rb +0 -47
  1715. data/lib/core/facets/time/to_date.rb +0 -1
  1716. data/lib/core/facets/time/to_s.rb +0 -1
  1717. data/lib/core/facets/time/to_time.rb +0 -1
  1718. data/lib/core/facets/unboundmethod.rb +0 -5
  1719. data/lib/core/facets/unboundmethod/name.rb +0 -26
  1720. data/lib/mixin/facets/binreadable.rb +0 -224
  1721. data/lib/mixin/facets/buildable.rb +0 -82
  1722. data/lib/mixin/facets/cloneable.rb +0 -90
  1723. data/lib/mixin/facets/enumerablepass.rb +0 -204
  1724. data/lib/mixin/facets/expirable.rb +0 -89
  1725. data/lib/mixin/facets/fileable.rb +0 -155
  1726. data/lib/mixin/facets/instantiable.rb +0 -45
  1727. data/lib/mixin/facets/multiton.rb +0 -357
  1728. data/lib/mixin/facets/registerable.rb +0 -36
  1729. data/lib/mixin/facets/tasksystem.rb +0 -350
  1730. data/lib/mixin/facets/uninheritable.rb +0 -55
  1731. data/lib/mixin/facets/validation.rb +0 -445
  1732. data/lib/more/facets/advice.rb +0 -159
  1733. data/lib/more/facets/annotations.rb +0 -154
  1734. data/lib/more/facets/ansicode.rb +0 -268
  1735. data/lib/more/facets/aop.rb +0 -205
  1736. data/lib/more/facets/arguments.rb +0 -322
  1737. data/lib/more/facets/attributes.rb +0 -133
  1738. data/lib/more/facets/autoreload.rb +0 -150
  1739. data/lib/more/facets/bbcode.rb +0 -346
  1740. data/lib/more/facets/behavior.rb +0 -91
  1741. data/lib/more/facets/bytes.rb +0 -164
  1742. data/lib/more/facets/capsule.rb +0 -254
  1743. data/lib/more/facets/class_extension.rb +0 -94
  1744. data/lib/more/facets/classmethods.rb +0 -157
  1745. data/lib/more/facets/command.rb +0 -479
  1746. data/lib/more/facets/compare_on.rb +0 -91
  1747. data/lib/more/facets/console.rb +0 -107
  1748. data/lib/more/facets/continuation.rb +0 -54
  1749. data/lib/more/facets/crypt.rb +0 -428
  1750. data/lib/more/facets/curry.rb +0 -67
  1751. data/lib/more/facets/cut.rb +0 -190
  1752. data/lib/more/facets/daemonize.rb +0 -50
  1753. data/lib/more/facets/date.rb +0 -79
  1754. data/lib/more/facets/dependency.rb +0 -135
  1755. data/lib/more/facets/duration.rb +0 -534
  1756. data/lib/more/facets/elementor.rb +0 -221
  1757. data/lib/more/facets/eventhook.rb +0 -121
  1758. data/lib/more/facets/fileutils.rb +0 -443
  1759. data/lib/more/facets/getoptlong.rb +0 -83
  1760. data/lib/more/facets/hash/keyize.rb +0 -181
  1761. data/lib/more/facets/inheritor.rb +0 -108
  1762. data/lib/more/facets/instantise.rb +0 -85
  1763. data/lib/more/facets/interface.rb +0 -230
  1764. data/lib/more/facets/lazy.rb +0 -245
  1765. data/lib/more/facets/let.rb +0 -71
  1766. data/lib/more/facets/logger.rb +0 -202
  1767. data/lib/more/facets/main.rb +0 -77
  1768. data/lib/more/facets/memoize.rb +0 -110
  1769. data/lib/more/facets/multipliers.rb +0 -99
  1770. data/lib/more/facets/namespace.rb +0 -113
  1771. data/lib/more/facets/ostruct.rb +0 -226
  1772. data/lib/more/facets/overload.rb +0 -100
  1773. data/lib/more/facets/paramix.rb +0 -148
  1774. data/lib/more/facets/pathname.rb +0 -120
  1775. data/lib/more/facets/prepend.rb +0 -92
  1776. data/lib/more/facets/prototype.rb +0 -89
  1777. data/lib/more/facets/random.rb +0 -373
  1778. data/lib/more/facets/rbconfig.rb +0 -55
  1779. data/lib/more/facets/rbsystem.rb +0 -227
  1780. data/lib/more/facets/recursive.rb +0 -67
  1781. data/lib/more/facets/reflection.rb +0 -103
  1782. data/lib/more/facets/settings.rb +0 -250
  1783. data/lib/more/facets/shellwords.rb +0 -43
  1784. data/lib/more/facets/snapshot.rb +0 -183
  1785. data/lib/more/facets/stylize.rb +0 -213
  1786. data/lib/more/facets/thread.rb +0 -55
  1787. data/lib/more/facets/times.rb +0 -346
  1788. data/lib/more/facets/tracepoint.rb +0 -194
  1789. data/lib/more/facets/typecast.rb +0 -233
  1790. data/lib/more/facets/uploadutils.rb +0 -441
  1791. data/lib/more/facets/yaml.rb +0 -40
  1792. data/lib/more/facets/ziputils.rb +0 -357
  1793. data/meta/MANIFEST +0 -947
  1794. data/meta/VERSION +0 -1
  1795. data/task/install +0 -98
  1796. data/task/rdoc +0 -5
  1797. data/task/test +0 -40
  1798. data/test/class/test_buildingblock.rb +0 -36
  1799. data/test/core/array/test_delete.rb +0 -38
  1800. data/test/core/array/test_indexable.rb +0 -126
  1801. data/test/core/array/test_merge.rb +0 -29
  1802. data/test/core/array/test_pad.rb +0 -35
  1803. data/test/core/array/test_rotate.rb +0 -31
  1804. data/test/core/array/test_select.rb +0 -20
  1805. data/test/core/binding/test_caller.rb +0 -47
  1806. data/test/core/binding/test_defined.rb +0 -17
  1807. data/test/core/binding/test_eval.rb +0 -17
  1808. data/test/core/binding/test_here.rb +0 -17
  1809. data/test/core/binding/test_self.rb +0 -17
  1810. data/test/core/binding/test_vars.rb +0 -31
  1811. data/test/core/class/test_descendents.rb +0 -17
  1812. data/test/core/class/test_initializer.rb +0 -19
  1813. data/test/core/class/test_remove_descendents.rb +0 -19
  1814. data/test/core/comparable/test_bound.rb +0 -43
  1815. data/test/core/comparable/test_cmp.rb +0 -63
  1816. data/test/core/dir/test_parent.rb +0 -14
  1817. data/test/core/dir/test_recurse.rb +0 -32
  1818. data/test/core/dir/test_traverse.rb +0 -30
  1819. data/test/core/enumerable/test_cartesian.rb +0 -39
  1820. data/test/core/enumerable/test_collect.rb +0 -63
  1821. data/test/core/enumerable/test_combination.rb +0 -48
  1822. data/test/core/enumerable/test_count.rb +0 -63
  1823. data/test/core/enumerable/test_each.rb +0 -77
  1824. data/test/core/enumerable/test_mash.rb +0 -51
  1825. data/test/core/enumerable/test_permutation.rb +0 -16
  1826. data/test/core/enumerable/test_split.rb +0 -52
  1827. data/test/core/exception/test_detail.rb +0 -19
  1828. data/test/core/file/test_null.rb +0 -12
  1829. data/test/core/file/test_read.rb +0 -34
  1830. data/test/core/file/test_sanitize.rb +0 -52
  1831. data/test/core/file/test_split_all.rb +0 -32
  1832. data/test/core/file/test_write.rb +0 -76
  1833. data/test/core/filetest/test_root.rb +0 -14
  1834. data/test/core/hash/test_alias.rb +0 -18
  1835. data/test/core/hash/test_at.rb +0 -17
  1836. data/test/core/hash/test_autonew.rb +0 -13
  1837. data/test/core/hash/test_collate.rb +0 -33
  1838. data/test/core/hash/test_delete.rb +0 -30
  1839. data/test/core/hash/test_each_with_key.rb +0 -16
  1840. data/test/core/hash/test_has_keys.rb +0 -19
  1841. data/test/core/hash/test_insert.rb +0 -15
  1842. data/test/core/hash/test_inverse.rb +0 -17
  1843. data/test/core/hash/test_op.rb +0 -51
  1844. data/test/core/hash/test_rekey.rb +0 -39
  1845. data/test/core/hash/test_reverse_merge.rb +0 -16
  1846. data/test/core/hash/test_select.rb +0 -43
  1847. data/test/core/hash/test_swap.rb +0 -21
  1848. data/test/core/hash/test_traverse.rb +0 -24
  1849. data/test/core/hash/test_update.rb +0 -35
  1850. data/test/core/hash/test_zipnew.rb +0 -15
  1851. data/test/core/integer/test_bitmask.rb +0 -53
  1852. data/test/core/integer/test_factorial.rb +0 -17
  1853. data/test/core/integer/test_multiple.rb +0 -37
  1854. data/test/core/integer/test_of.rb +0 -21
  1855. data/test/core/kernel/test_callstack.rb +0 -21
  1856. data/test/core/kernel/test_constant.rb +0 -21
  1857. data/test/core/kernel/test_deepcopy.rb +0 -30
  1858. data/test/core/kernel/test_instance.rb +0 -63
  1859. data/test/core/kernel/test_metaid.rb +0 -47
  1860. data/test/core/kernel/test_populate.rb +0 -49
  1861. data/test/core/kernel/test_report.rb +0 -9
  1862. data/test/core/kernel/test_super.rb +0 -53
  1863. data/test/core/kernel/test_tap.rb +0 -21
  1864. data/test/core/kernel/test_val.rb +0 -42
  1865. data/test/core/kernel/test_withattr.rb +0 -38
  1866. data/test/core/matchdata/test_matchset.rb +0 -24
  1867. data/test/core/module/test_alias.rb +0 -47
  1868. data/test/core/module/test_cattr.rb +0 -50
  1869. data/test/core/module/test_include.rb +0 -43
  1870. data/test/core/module/test_modify.rb +0 -177
  1871. data/test/core/module/test_name.rb +0 -47
  1872. data/test/core/module/test_traits.rb +0 -51
  1873. data/test/core/numeric/test_round.rb +0 -59
  1874. data/test/core/proc/test_bind.rb +0 -38
  1875. data/test/core/proc/test_compose.rb +0 -28
  1876. data/test/core/range/test_combine.rb +0 -21
  1877. data/test/core/range/test_overlap.rb +0 -39
  1878. data/test/core/regexp/test_arity.rb +0 -20
  1879. data/test/core/string/test_blank.rb +0 -18
  1880. data/test/core/string/test_case.rb +0 -29
  1881. data/test/core/string/test_crypt.rb +0 -17
  1882. data/test/core/string/test_filter.rb +0 -21
  1883. data/test/core/string/test_indexable.rb +0 -68
  1884. data/test/core/string/test_nchar.rb +0 -16
  1885. data/test/core/string/test_op.rb +0 -14
  1886. data/test/core/string/test_partitions.rb +0 -52
  1887. data/test/core/string/test_range.rb +0 -25
  1888. data/test/core/string/test_regesc.rb +0 -21
  1889. data/test/core/string/test_scan.rb +0 -31
  1890. data/test/core/string/test_stackable.rb +0 -94
  1891. data/test/core/string/test_tabs.rb +0 -236
  1892. data/test/core/string/test_wrap.rb +0 -82
  1893. data/test/core/symbol/test_chomp.rb +0 -17
  1894. data/test/core/symbol/test_generate.rb +0 -13
  1895. data/test/core/symbol/test_not.rb +0 -16
  1896. data/test/core/symbol/test_shadow.rb +0 -14
  1897. data/test/core/symbol/test_succ.rb +0 -15
  1898. data/test/core/symbol/test_to_proc.rb +0 -35
  1899. data/test/core/test_conversion.rb +0 -207
  1900. data/test/core/time/test_change.rb +0 -17
  1901. data/test/core/time/test_elapse.rb +0 -16
  1902. data/test/core/time/test_stamp.rb +0 -28
  1903. data/test/mixin/test_buildable.rb +0 -40
  1904. data/test/mixin/test_instantiable.rb +0 -24
  1905. data/test/more/hash/test_keyize.rb +0 -45
  1906. data/test/more/test_advice.rb +0 -71
  1907. data/test/more/test_annotations.rb +0 -99
  1908. data/test/more/test_aop.rb +0 -49
  1909. data/test/more/test_arguments.rb +0 -56
  1910. data/test/more/test_attributes.rb +0 -26
  1911. data/test/more/test_compare_on.rb +0 -44
  1912. data/test/more/test_curry.rb +0 -28
  1913. data/test/more/test_cut.rb +0 -22
  1914. data/test/more/test_elementor.rb +0 -59
  1915. data/test/more/test_interface.rb +0 -84
  1916. data/test/more/test_let.rb +0 -18
  1917. data/test/more/test_namespace.rb +0 -78
  1918. data/test/more/test_overload.rb +0 -44
  1919. data/test/more/test_paramix.rb +0 -86
  1920. data/test/more/test_stylize.rb +0 -139
  1921. data/test/more/test_thread.rb +0 -23
  1922. data/test/more/test_typecast.rb +0 -56
@@ -0,0 +1,203 @@
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", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=480,width=750" ).focus();
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/matchdata/match_rb.html">lib/facets/matchdata/match.rb</a>
61
+ <a href="../files/lib/facets/matchdata/matchset_rb.html">lib/facets/matchdata/matchset.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="#M000138">match</a></li>
87
+ <li><a href="#M000139">matchset</a></li>
88
+ <li><a href="#M000140">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="M000138"></a><b>match</b>(index=0)
100
+ </div>
101
+ <div class="description">
102
+ <p>
103
+ Return the primary <a href="MatchData.html#M000138">match</a> string. This
104
+ is equivalent to +md[0]+.
105
+ </p>
106
+ <pre>
107
+ md = /123/.match &quot;123456&quot;
108
+ md.match #=&gt; &quot;123&quot;
109
+
110
+ CREDIT: Martin DeMello
111
+ </pre>
112
+ </div>
113
+ <div class="sourcecode">
114
+ <p class="source-link">[ <a href="javascript:toggleSource('M000138_source')" id="l_M000138_source">show source</a> ]</p>
115
+ <div id="M000138_source" class="dyn-source">
116
+ <pre>
117
+ <span class="ruby-comment cmt"># File lib/facets/matchdata/match.rb, line 10</span>
118
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">match</span>(<span class="ruby-identifier">index</span>=<span class="ruby-value">0</span>)
119
+ <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">index</span>]
120
+ <span class="ruby-keyword kw">end</span>
121
+ </pre>
122
+ </div>
123
+ </div>
124
+ </div>
125
+ <div class="method">
126
+ <div class="title">
127
+ <a name="M000139"></a><b>matchset</b>()
128
+ </div>
129
+ <div class="description">
130
+ <p>
131
+ Returns [ pre_match, <a href="MatchData.html#M000140">matchtree</a>,
132
+ post_match ]. (see <a href="MatchData.html#M000140">matchtree</a>)
133
+ </p>
134
+ <pre>
135
+ md = /(bb)(cc(dd))(ee)/.match &quot;XXaabbccddeeffXX&quot;
136
+ md.to_a #=&gt; [&quot;XXaabbccddeeffXX&quot;, &quot;bb&quot;, &quot;ccdd&quot;, &quot;dd&quot;, &quot;ee&quot;]
137
+ md.matchset #=&gt; [&quot;XXaa&quot;, [[&quot;bb&quot;], [&quot;cc&quot;, [&quot;dd&quot;]], &quot;ee&quot;], &quot;ffXX&quot;]
138
+
139
+ CREDIT: Trans
140
+ </pre>
141
+ </div>
142
+ <div class="sourcecode">
143
+ <p class="source-link">[ <a href="javascript:toggleSource('M000139_source')" id="l_M000139_source">show source</a> ]</p>
144
+ <div id="M000139_source" class="dyn-source">
145
+ <pre>
146
+ <span class="ruby-comment cmt"># File lib/facets/matchdata/matchset.rb, line 11</span>
147
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">matchset</span>
148
+ [<span class="ruby-identifier">pre_match</span>, <span class="ruby-identifier">matchtree</span>, <span class="ruby-identifier">post_match</span>]
149
+ <span class="ruby-keyword kw">end</span>
150
+ </pre>
151
+ </div>
152
+ </div>
153
+ </div>
154
+ <div class="method">
155
+ <div class="title">
156
+ <a name="M000140"></a><b>matchtree</b>(index=0)
157
+ </div>
158
+ <div class="description">
159
+ <p>
160
+ An alternate to to_a which returns the matches in order corresponding with
161
+ the regular expression.
162
+ </p>
163
+ <pre>
164
+ md = /(bb)(cc(dd))(ee)/.match &quot;XXaabbccddeeffXX&quot;
165
+ md.to_a #=&gt; [&quot;XXaabbccddeeffXX&quot;, &quot;bb&quot;, &quot;ccdd&quot;, &quot;dd&quot;, &quot;ee&quot;]
166
+ md.matchtree #=&gt; [[&quot;bb&quot;], [&quot;cc&quot;, [&quot;dd&quot;]], &quot;ee&quot;]
167
+
168
+ CREDIT: Trans
169
+ </pre>
170
+ </div>
171
+ <div class="sourcecode">
172
+ <p class="source-link">[ <a href="javascript:toggleSource('M000140_source')" id="l_M000140_source">show source</a> ]</p>
173
+ <div id="M000140_source" class="dyn-source">
174
+ <pre>
175
+ <span class="ruby-comment cmt"># File lib/facets/matchdata/matchset.rb, line 24</span>
176
+ <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>)
177
+ <span class="ruby-identifier">ret</span>=[]
178
+ <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>)
179
+ <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>
180
+ <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>
181
+ <span class="ruby-comment cmt"># we are finished, if something is left, then add it</span>
182
+ <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>
183
+ <span class="ruby-keyword kw">break</span>
184
+ <span class="ruby-keyword kw">else</span>
185
+ <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>
186
+ <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>
187
+ <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>)
188
+ <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>)
189
+ <span class="ruby-keyword kw">end</span>
190
+ <span class="ruby-keyword kw">end</span>
191
+ <span class="ruby-keyword kw">end</span>
192
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">ret</span>
193
+ <span class="ruby-keyword kw">end</span>
194
+ </pre>
195
+ </div>
196
+ </div>
197
+ </div>
198
+ </div>
199
+
200
+ </div>
201
+
202
+ </body>
203
+ </html>
@@ -0,0 +1,97 @@
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: MissingArgument</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", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=480,width=750" ).focus();
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 />MissingArgument</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/proc/partial_rb.html">lib/facets/proc/partial.rb</a>
61
+ </td>
62
+ </tr>
63
+ <tr>
64
+ <td>Parent:</td>
65
+ <td>
66
+ ArgumentError
67
+ </td>
68
+ </tr>
69
+ </table>
70
+ </td>
71
+ </tr>
72
+ </table>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+ <div id="content">
77
+
78
+ <div class="description"><p>
79
+ <a href="MissingArgument.html">MissingArgument</a> exception class is used
80
+ to represent an argument &quot;hole&quot;.
81
+ </p>
82
+ </div>
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+ </div>
93
+
94
+ </div>
95
+
96
+ </body>
97
+ </html>
@@ -0,0 +1,1605 @@
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", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=480,width=750" ).focus();
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/metaid_rb.html">lib/facets/metaid.rb</a>
61
+ <a href="../files/lib/facets/comparable/comparable_rb.html">lib/facets/comparable/comparable.rb</a>
62
+ <a href="../files/lib/facets/module/alias_rb.html">lib/facets/module/alias.rb</a>
63
+ <a href="../files/lib/facets/module/prepend_rb.html">lib/facets/module/prepend.rb</a>
64
+ <a href="../files/lib/facets/module/ancestor_rb.html">lib/facets/module/ancestor.rb</a>
65
+ <a href="../files/lib/facets/module/conflict_rb.html">lib/facets/module/conflict.rb</a>
66
+ <a href="../files/lib/facets/module/can_rb.html">lib/facets/module/can.rb</a>
67
+ <a href="../files/lib/facets/module/include_function_module_rb.html">lib/facets/module/include_function_module.rb</a>
68
+ <a href="../files/lib/facets/module/op_rb.html">lib/facets/module/op.rb</a>
69
+ <a href="../files/lib/facets/module/pathize_rb.html">lib/facets/module/pathize.rb</a>
70
+ <a href="../files/lib/facets/module/instance_methods_rb.html">lib/facets/module/instance_methods.rb</a>
71
+ <a href="../files/lib/facets/module/module_load_rb.html">lib/facets/module/module_load.rb</a>
72
+ <a href="../files/lib/facets/module/is_rb.html">lib/facets/module/is.rb</a>
73
+ <a href="../files/lib/facets/module/nesting_rb.html">lib/facets/module/nesting.rb</a>
74
+ <a href="../files/lib/facets/module/class_rb.html">lib/facets/module/class.rb</a>
75
+ <a href="../files/lib/facets/module/abstract_rb.html">lib/facets/module/abstract.rb</a>
76
+ <a href="../files/lib/facets/module/clone_rb.html">lib/facets/module/clone.rb</a>
77
+ <a href="../files/lib/facets/module/revise_rb.html">lib/facets/module/revise.rb</a>
78
+ </td>
79
+ </tr>
80
+ <tr>
81
+ <td>Parent:</td>
82
+ <td>
83
+ <a href="Object.html">
84
+ Object
85
+ </a>
86
+ </td>
87
+ </tr>
88
+ </table>
89
+ </td>
90
+ </tr>
91
+ </table>
92
+ <!-- banner header -->
93
+
94
+ <div id="bodyContent">
95
+ <div id="content">
96
+
97
+ <div class="description"><p>
98
+ It would nice if we could the following. Then the middle portion of the <a
99
+ href="Module.html#M000142">Comparable</a> method would not be needed. But I
100
+ fear it might break others code.
101
+ </p>
102
+ <pre>
103
+ module Comparable
104
+
105
+ def &lt;=&gt;(other)
106
+ comparability.each do |field|
107
+ cmp = send(field) &lt;=&gt; other.send(field); return cmp unless cmp == 0
108
+ end
109
+ end
110
+
111
+ end
112
+ </pre>
113
+ </div>
114
+
115
+
116
+
117
+ <div class="sectiontitle">Methods</div>
118
+ <ul>
119
+ <li><a href="#M000157">*</a></li>
120
+ <li><a href="#M000155">+</a></li>
121
+ <li><a href="#M000156">-</a></li>
122
+ <li><a href="#M000142">Comparable</a></li>
123
+ <li><a href="#M000173">abstract</a></li>
124
+ <li><a href="#M000143">alias_accessor</a></li>
125
+ <li><a href="#M000147">alias_method_chain</a></li>
126
+ <li><a href="#M000146">alias_module_function</a></li>
127
+ <li><a href="#M000144">alias_reader</a></li>
128
+ <li><a href="#M000145">alias_writer</a></li>
129
+ <li><a href="#M000159">all_instance_methods</a></li>
130
+ <li><a href="#M000149">ancestor?</a></li>
131
+ <li><a href="#M000171">basename</a></li>
132
+ <li><a href="#M000141">class_def</a></li>
133
+ <li><a href="#M000166">class_load</a></li>
134
+ <li><a href="#M000165">class_require</a></li>
135
+ <li><a href="#M000150">conflict?</a></li>
136
+ <li><a href="#M000154">include_function_module</a></li>
137
+ <li><a href="#M000160">instance_method_defined?</a></li>
138
+ <li><a href="#M000176">integrate</a></li>
139
+ <li><a href="#M000168">is</a></li>
140
+ <li><a href="#M000167">is?</a></li>
141
+ <li><a href="#M000170">modspace</a></li>
142
+ <li><a href="#M000163">module_load</a></li>
143
+ <li><a href="#M000162">module_method_defined?</a></li>
144
+ <li><a href="#M000164">module_require</a></li>
145
+ <li><a href="#M000169">nesting</a></li>
146
+ <li><a href="#M000158">pathize</a></li>
147
+ <li><a href="#M000148">prepend</a></li>
148
+ <li><a href="#M000152">private_conflict?</a></li>
149
+ <li><a href="#M000153">protected_conflict?</a></li>
150
+ <li><a href="#M000151">public_conflict?</a></li>
151
+ <li><a href="#M000180">redef</a></li>
152
+ <li><a href="#M000177">redefine_method</a></li>
153
+ <li><a href="#M000181">redirect</a></li>
154
+ <li><a href="#M000178">redirect_method</a></li>
155
+ <li><a href="#M000182">rename</a></li>
156
+ <li><a href="#M000179">rename_method</a></li>
157
+ <li><a href="#M000175">revisal</a></li>
158
+ <li><a href="#M000174">revise</a></li>
159
+ <li><a href="#M000161">singleton_method_defined?</a></li>
160
+ <li><a href="#M000172">spacename</a></li>
161
+ <li><a href="#M000184">wrap</a></li>
162
+ <li><a href="#M000183">wrap_method</a></li>
163
+ </ul>
164
+
165
+ <div class="sectiontitle">Included Modules</div>
166
+ <ul>
167
+ <li><a href="Module/CloneExtensions.html">CloneExtensions</a></li>
168
+ </ul>
169
+
170
+
171
+ <div class="sectiontitle">Classes and Modules</div>
172
+ Module <a href="Module/CloneExtensions.html" class="link">Module::CloneExtensions</a><br />
173
+
174
+
175
+
176
+
177
+ <div class="sectiontitle">Public Instance methods</div>
178
+ <div class="method">
179
+ <div class="title">
180
+ <a name="M000157"></a><b>*</b>(rename_map)
181
+ </div>
182
+ <div class="description">
183
+ <p>
184
+ Rename methods.
185
+ </p>
186
+ <pre>
187
+ module A
188
+ def a; &quot;a&quot;; end
189
+ end
190
+
191
+ B = A * { :a =&gt; :b }
192
+
193
+ class X; include B; end
194
+
195
+ X.new.b #=&gt; &quot;a&quot;
196
+
197
+ CREDIT: Thomas Sawyer
198
+ CREDIT: Robert Dober
199
+ </pre>
200
+ </div>
201
+ <div class="sourcecode">
202
+ <p class="source-link">[ <a href="javascript:toggleSource('M000157_source')" id="l_M000157_source">show source</a> ]</p>
203
+ <div id="M000157_source" class="dyn-source">
204
+ <pre>
205
+ <span class="ruby-comment cmt"># File lib/facets/module/op.rb, line 83</span>
206
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">*</span>(<span class="ruby-identifier">rename_map</span>)
207
+ <span class="ruby-identifier">base</span> = <span class="ruby-keyword kw">self</span>
208
+ <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword kw">do</span>
209
+ <span class="ruby-identifier">include</span> <span class="ruby-identifier">base</span>
210
+ <span class="ruby-identifier">rename_map</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">from</span>, <span class="ruby-identifier">to</span><span class="ruby-operator">|</span>
211
+ <span class="ruby-identifier">alias_method</span> <span class="ruby-identifier">to</span>, <span class="ruby-identifier">from</span>
212
+ <span class="ruby-identifier">undef_method</span> <span class="ruby-identifier">from</span>
213
+ <span class="ruby-keyword kw">end</span>
214
+ <span class="ruby-keyword kw">end</span>
215
+ <span class="ruby-keyword kw">end</span>
216
+ </pre>
217
+ </div>
218
+ </div>
219
+ </div>
220
+ <div class="method">
221
+ <div class="title">
222
+ <a name="M000155"></a><b>+</b>(other)
223
+ </div>
224
+ <div class="description">
225
+ <p>
226
+ Combine modules.
227
+ </p>
228
+ <pre>
229
+ module A
230
+ def a; &quot;a&quot;; end
231
+ end
232
+
233
+ module B
234
+ def b; &quot;b&quot;; end
235
+ end
236
+
237
+ C = A + B
238
+
239
+ class X; include C; end
240
+
241
+ X.new.a #=&gt; &quot;a&quot;
242
+ X.new.b #=&gt; &quot;b&quot;
243
+ </pre>
244
+ <p>
245
+ Note that in the old version of traits.rb we cloned modules and altered
246
+ their copies. Eg.
247
+ </p>
248
+ <pre>
249
+ def +(other)
250
+ mod1 = other.clone
251
+ mod2 = clone
252
+ mod1.module_eval{ include mod2 }
253
+ end
254
+ </pre>
255
+ <p>
256
+ Later it was realized that this thwarted the main benefit that Ruby&#8216;s
257
+ concept of modules has over traditional traits, inheritance.
258
+ </p>
259
+ <pre>
260
+ CREDIT: Thomas Sawyer
261
+ CREDIT: Robert Dober
262
+ </pre>
263
+ </div>
264
+ <div class="sourcecode">
265
+ <p class="source-link">[ <a href="javascript:toggleSource('M000155_source')" id="l_M000155_source">show source</a> ]</p>
266
+ <div id="M000155_source" class="dyn-source">
267
+ <pre>
268
+ <span class="ruby-comment cmt"># File lib/facets/module/op.rb, line 36</span>
269
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">+</span>(<span class="ruby-identifier">other</span>)
270
+ <span class="ruby-identifier">base</span> = <span class="ruby-keyword kw">self</span>
271
+ <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword kw">do</span>
272
+ <span class="ruby-identifier">include</span> <span class="ruby-identifier">base</span>
273
+ <span class="ruby-identifier">include</span> <span class="ruby-identifier">other</span>
274
+ <span class="ruby-keyword kw">end</span>
275
+ <span class="ruby-keyword kw">end</span>
276
+ </pre>
277
+ </div>
278
+ </div>
279
+ </div>
280
+ <div class="method">
281
+ <div class="title">
282
+ <a name="M000156"></a><b>-</b>(other)
283
+ </div>
284
+ <div class="description">
285
+ <p>
286
+ Subtract modules.
287
+ </p>
288
+ <pre>
289
+ TODO: Should this use all instance_methods, not just public?
290
+
291
+ CREDIT: Thomas Sawyer
292
+ CREDIT: Robert Dober
293
+ </pre>
294
+ </div>
295
+ <div class="sourcecode">
296
+ <p class="source-link">[ <a href="javascript:toggleSource('M000156_source')" id="l_M000156_source">show source</a> ]</p>
297
+ <div id="M000156_source" class="dyn-source">
298
+ <pre>
299
+ <span class="ruby-comment cmt"># File lib/facets/module/op.rb, line 51</span>
300
+ <span class="ruby-keyword kw">def</span> <span class="ruby-operator">-</span>(<span class="ruby-identifier">other</span>)
301
+ <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">other</span>
302
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Array</span>
303
+ <span class="ruby-identifier">subtract</span> = <span class="ruby-identifier">instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">other</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>}
304
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Module</span>
305
+ <span class="ruby-identifier">subtract</span> = <span class="ruby-identifier">instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-comment cmt"># false?</span>
306
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>, <span class="ruby-constant">Symbol</span>
307
+ <span class="ruby-identifier">subtract</span> = <span class="ruby-identifier">instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-operator">&amp;</span> [<span class="ruby-identifier">other</span>.<span class="ruby-identifier">to_s</span>]
308
+ <span class="ruby-keyword kw">end</span>
309
+ <span class="ruby-identifier">base</span> = <span class="ruby-keyword kw">self</span>
310
+ <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword kw">do</span>
311
+ <span class="ruby-identifier">include</span> <span class="ruby-identifier">base</span>
312
+ <span class="ruby-identifier">subtract</span>.<span class="ruby-identifier">each</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> <span class="ruby-identifier">undef_method</span> <span class="ruby-identifier">x</span> }
313
+ <span class="ruby-keyword kw">end</span>
314
+ <span class="ruby-keyword kw">end</span>
315
+ </pre>
316
+ </div>
317
+ </div>
318
+ </div>
319
+ <div class="method">
320
+ <div class="title">
321
+ <a name="M000142"></a><b>Comparable</b>(*accessors)
322
+ </div>
323
+ <div class="description">
324
+ <p>
325
+ Automatically generate sorting defintions base on attribute fields.
326
+ </p>
327
+ <pre>
328
+ include SortOn(:a, :b)
329
+ </pre>
330
+ <p>
331
+ <a href="Module.html#M000168">is</a> equivalent to including a module
332
+ containing:
333
+ </p>
334
+ <pre>
335
+ def &lt;=&gt;(other)
336
+ cmp = self.a &lt;=&gt; other.a; return cmp unless cmp == 0
337
+ cmp = self.b &lt;=&gt; other.b; return cmp unless cmp == 0
338
+ 0
339
+ end
340
+ </pre>
341
+ </div>
342
+ <div class="sourcecode">
343
+ <p class="source-link">[ <a href="javascript:toggleSource('M000142_source')" id="l_M000142_source">show source</a> ]</p>
344
+ <div id="M000142_source" class="dyn-source">
345
+ <pre>
346
+ <span class="ruby-comment cmt"># File lib/facets/comparable/comparable.rb, line 28</span>
347
+ <span class="ruby-keyword kw">def</span> <span class="ruby-constant">Comparable</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">accessors</span>)
348
+ <span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">:comparability</span>){ <span class="ruby-identifier">accessors</span> }
349
+ <span class="ruby-identifier">code</span> = <span class="ruby-value str">%{
350
+ def &lt;=&gt;(other)
351
+ comparability.each do |a|
352
+ cmp = (send(a) &lt;=&gt; other.send(a)); return cmp unless cmp == 0
353
+ end
354
+ end
355
+ }</span>
356
+ <span class="ruby-identifier">module_eval</span> <span class="ruby-identifier">code</span>
357
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Comparable</span>
358
+ <span class="ruby-keyword kw">end</span>
359
+ </pre>
360
+ </div>
361
+ </div>
362
+ </div>
363
+ <div class="method">
364
+ <div class="title">
365
+ <a name="M000173"></a><b>abstract</b>( *sym )
366
+ </div>
367
+ <div class="description">
368
+ <p>
369
+ Create an <a href="Module.html#M000173">abstract</a> method. If it <a
370
+ href="Module.html#M000168">is</a> not overridden, it will raise a TypeError
371
+ when called.
372
+ </p>
373
+ <pre>
374
+ class C
375
+ abstract :a
376
+ end
377
+
378
+ c = C.new
379
+ c.a #=&gt; Error: undefined abstraction #a
380
+
381
+ CREDIT: Trans
382
+ </pre>
383
+ </div>
384
+ <div class="sourcecode">
385
+ <p class="source-link">[ <a href="javascript:toggleSource('M000173_source')" id="l_M000173_source">show source</a> ]</p>
386
+ <div id="M000173_source" class="dyn-source">
387
+ <pre>
388
+ <span class="ruby-comment cmt"># File lib/facets/module/abstract.rb, line 15</span>
389
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">abstract</span>( <span class="ruby-operator">*</span><span class="ruby-identifier">sym</span> )
390
+ <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>
391
+ <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> }
392
+ }
393
+ <span class="ruby-keyword kw">end</span>
394
+ </pre>
395
+ </div>
396
+ </div>
397
+ </div>
398
+ <div class="method">
399
+ <div class="title">
400
+ <a name="M000159"></a><b>all_instance_methods</b>(include_super=true)
401
+ </div>
402
+ <div class="description">
403
+ <p>
404
+ List all instance methods, equivalent to
405
+ </p>
406
+ <pre>
407
+ public_instance_methods +
408
+ protected_instance_methods +
409
+ private_instance_methods
410
+ </pre>
411
+ <p>
412
+ TODO: Better name for <a
413
+ href="Module.html#M000159">all_instance_methods</a>?
414
+ </p>
415
+ <pre>
416
+ CREDIT: Trans
417
+ </pre>
418
+ </div>
419
+ <div class="sourcecode">
420
+ <p class="source-link">[ <a href="javascript:toggleSource('M000159_source')" id="l_M000159_source">show source</a> ]</p>
421
+ <div id="M000159_source" class="dyn-source">
422
+ <pre>
423
+ <span class="ruby-comment cmt"># File lib/facets/module/instance_methods.rb, line 13</span>
424
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">all_instance_methods</span>(<span class="ruby-identifier">include_super</span>=<span class="ruby-keyword kw">true</span>)
425
+ <span class="ruby-identifier">public_instance_methods</span>(<span class="ruby-identifier">include_super</span>) <span class="ruby-operator">+</span>
426
+ <span class="ruby-identifier">protected_instance_methods</span>(<span class="ruby-identifier">include_super</span>) <span class="ruby-operator">+</span>
427
+ <span class="ruby-identifier">private_instance_methods</span>(<span class="ruby-identifier">include_super</span>)
428
+ <span class="ruby-keyword kw">end</span>
429
+ </pre>
430
+ </div>
431
+ </div>
432
+ </div>
433
+ <div class="method">
434
+ <div class="title">
435
+ <a name="M000149"></a><b>ancestor?</b>( mod )
436
+ </div>
437
+ <div class="description">
438
+ <p>
439
+ Is a given class or module an ancestor of this class or module?
440
+ </p>
441
+ <pre>
442
+ class X ; end
443
+ class Y &lt; X ; end
444
+
445
+ X.ancestor?(Y)
446
+ </pre>
447
+ </div>
448
+ <div class="sourcecode">
449
+ <p class="source-link">[ <a href="javascript:toggleSource('M000149_source')" id="l_M000149_source">show source</a> ]</p>
450
+ <div id="M000149_source" class="dyn-source">
451
+ <pre>
452
+ <span class="ruby-comment cmt"># File lib/facets/module/ancestor.rb, line 11</span>
453
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ancestor?</span>( <span class="ruby-identifier">mod</span> )
454
+ <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">mod</span>
455
+ <span class="ruby-keyword kw">end</span>
456
+ </pre>
457
+ </div>
458
+ </div>
459
+ </div>
460
+ <div class="method">
461
+ <div class="title">
462
+ <a name="M000171"></a><b>basename</b>()
463
+ </div>
464
+ <div class="description">
465
+ <p>
466
+ Returns the root name of the module/class.
467
+ </p>
468
+ <pre>
469
+ module Example
470
+ class Demo
471
+ end
472
+ end
473
+
474
+ Demo.name #=&gt; &quot;Example::Demo&quot;
475
+ Demo.basename #=&gt; &quot;Demo&quot;
476
+ </pre>
477
+ <p>
478
+ For anonymous modules this will provide a <a
479
+ href="Module.html#M000171">basename</a> based on Module#inspect.
480
+ </p>
481
+ <pre>
482
+ m = Module.new
483
+ m.inspect #=&gt; &quot;#&lt;Module:0xb7bb0434&gt;&quot;
484
+ m.basename #=&gt; &quot;Module_0xb7bb0434&quot;
485
+
486
+ CREDIT: Trans
487
+ </pre>
488
+ </div>
489
+ <div class="sourcecode">
490
+ <p class="source-link">[ <a href="javascript:toggleSource('M000171_source')" id="l_M000171_source">show source</a> ]</p>
491
+ <div id="M000171_source" class="dyn-source">
492
+ <pre>
493
+ <span class="ruby-comment cmt"># File lib/facets/module/nesting.rb, line 54</span>
494
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">basename</span>
495
+ <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>
496
+ <span class="ruby-identifier">name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/^.*::/</span>, <span class="ruby-value str">''</span>)
497
+ <span class="ruby-keyword kw">else</span>
498
+ <span class="ruby-keyword kw">nil</span> <span class="ruby-comment cmt">#inspect.gsub('#&lt;','').gsub('&gt;','').sub(':', '_')</span>
499
+ <span class="ruby-keyword kw">end</span>
500
+ <span class="ruby-keyword kw">end</span>
501
+ </pre>
502
+ </div>
503
+ </div>
504
+ </div>
505
+ <div class="method">
506
+ <div class="title">
507
+ <a name="M000141"></a><b>class_def</b>(name, &amp;blk)
508
+ </div>
509
+ <div class="description">
510
+ <p>
511
+ Defines an instance method within a class.
512
+ </p>
513
+ <pre>
514
+ CREDIT: WhyTheLuckyStiff
515
+ </pre>
516
+ </div>
517
+ <div class="sourcecode">
518
+ <p class="source-link">[ <a href="javascript:toggleSource('M000141_source')" id="l_M000141_source">show source</a> ]</p>
519
+ <div id="M000141_source" class="dyn-source">
520
+ <pre>
521
+ <span class="ruby-comment cmt"># File lib/facets/metaid.rb, line 109</span>
522
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">class_def</span> <span class="ruby-identifier">name</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span>
523
+ <span class="ruby-identifier">class_eval</span> { <span class="ruby-identifier">define_method</span> <span class="ruby-identifier">name</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span> }
524
+ <span class="ruby-keyword kw">end</span>
525
+ </pre>
526
+ </div>
527
+ </div>
528
+ </div>
529
+ <div class="method">
530
+ <div class="title">
531
+ <a name="M000166"></a><b>class_load</b>( path )
532
+ </div>
533
+ <div class="description">
534
+ <p>
535
+ Alias for <a href="Module.html#M000163">module_load</a>
536
+ </p>
537
+ </div>
538
+ </div>
539
+ <div class="method">
540
+ <div class="title">
541
+ <a name="M000165"></a><b>class_require</b>( path )
542
+ </div>
543
+ <div class="description">
544
+ <p>
545
+ Alias for <a href="Module.html#M000164">module_require</a>
546
+ </p>
547
+ </div>
548
+ </div>
549
+ <div class="method">
550
+ <div class="title">
551
+ <a name="M000150"></a><b>conflict?</b>(other)
552
+ </div>
553
+ <div class="description">
554
+ <p>
555
+ Detect conflicts.
556
+ </p>
557
+ <pre>
558
+ module A
559
+ def c; end
560
+ end
561
+
562
+ module B
563
+ def c; end
564
+ end
565
+
566
+ A.conflict?(B) #=&gt; [&quot;c&quot;]
567
+
568
+ TODO: All instance methods, or just public?
569
+
570
+ CREDIT: Thomas Sawyer
571
+ CREDIT: Robert Dober
572
+ </pre>
573
+ </div>
574
+ <div class="sourcecode">
575
+ <p class="source-link">[ <a href="javascript:toggleSource('M000150_source')" id="l_M000150_source">show source</a> ]</p>
576
+ <div id="M000150_source" class="dyn-source">
577
+ <pre>
578
+ <span class="ruby-comment cmt"># File lib/facets/module/conflict.rb, line 21</span>
579
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">conflict?</span>(<span class="ruby-identifier">other</span>)
580
+ <span class="ruby-identifier">c</span> = []
581
+ <span class="ruby-identifier">c</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">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">public_instance_methods</span>(<span class="ruby-keyword kw">true</span>))
582
+ <span class="ruby-identifier">c</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">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">private_instance_methods</span>(<span class="ruby-keyword kw">true</span>))
583
+ <span class="ruby-identifier">c</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">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">protected_instance_methods</span>(<span class="ruby-keyword kw">true</span>))
584
+ <span class="ruby-identifier">c</span>.<span class="ruby-identifier">empty</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">false</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">c</span>
585
+ <span class="ruby-keyword kw">end</span>
586
+ </pre>
587
+ </div>
588
+ </div>
589
+ </div>
590
+ <div class="method">
591
+ <div class="title">
592
+ <a name="M000160"></a><b>instance_method_defined?</b>(meth)
593
+ </div>
594
+ <div class="description">
595
+ <p>
596
+ Query whether an instance method <a href="Module.html#M000168">is</a>
597
+ defined for the module.
598
+ </p>
599
+ <pre>
600
+ CREDIT: Gavin Sinclair
601
+ CREDIT: Noah Gibbs
602
+ </pre>
603
+ </div>
604
+ <div class="sourcecode">
605
+ <p class="source-link">[ <a href="javascript:toggleSource('M000160_source')" id="l_M000160_source">show source</a> ]</p>
606
+ <div id="M000160_source" class="dyn-source">
607
+ <pre>
608
+ <span class="ruby-comment cmt"># File lib/facets/module/instance_methods.rb, line 24</span>
609
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">instance_method_defined?</span>(<span class="ruby-identifier">meth</span>)
610
+ <span class="ruby-identifier">instance_methods_all</span>(<span class="ruby-keyword kw">true</span>).<span class="ruby-identifier">find</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-operator">==</span> <span class="ruby-identifier">meth</span>.<span class="ruby-identifier">to_s</span> }
611
+ <span class="ruby-keyword kw">end</span>
612
+ </pre>
613
+ </div>
614
+ </div>
615
+ </div>
616
+ <div class="method">
617
+ <div class="title">
618
+ <a name="M000176"></a><b>integrate</b>(mod, &amp;block)
619
+ </div>
620
+ <div class="description">
621
+ <p>
622
+ Using <a href="Module.html#M000176">integrate</a> <a
623
+ href="Module.html#M000168">is</a> just like using include except the module
624
+ included <a href="Module.html#M000168">is</a> a reconstruction of the one
625
+ given altered by the commands given in the block.
626
+ </p>
627
+ <p>
628
+ Convenient commands available are: <a
629
+ href="Module.html#M000182">rename</a>, <a
630
+ href="Module.html#M000180">redef</a>, remove, nodef and <a
631
+ href="Module.html#M000184">wrap</a>. But any module method can be used.
632
+ </p>
633
+ <pre>
634
+ module W
635
+ def q ; &quot;q&quot; ; end
636
+ def y ; &quot;y&quot; ; end
637
+ end
638
+
639
+ class X
640
+ integrate W do
641
+ nodef :y
642
+ end
643
+ end
644
+
645
+ x = X.new
646
+ x.q #=&gt; &quot;q&quot;
647
+ x.y #=&gt; missing method error
648
+ </pre>
649
+ <p>
650
+ This <a href="Module.html#M000168">is</a> like <a
651
+ href="Module.html#M000175">revisal</a>, but <a
652
+ href="Module.html#M000175">revisal</a> only returns the reconstructred
653
+ module. It does not include it.
654
+ </p>
655
+ <pre>
656
+ CREDIT: Trans
657
+ </pre>
658
+ </div>
659
+ <div class="sourcecode">
660
+ <p class="source-link">[ <a href="javascript:toggleSource('M000176_source')" id="l_M000176_source">show source</a> ]</p>
661
+ <div id="M000176_source" class="dyn-source">
662
+ <pre>
663
+ <span class="ruby-comment cmt"># File lib/facets/module/revise.rb, line 46</span>
664
+ <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>)
665
+ <span class="ruby-comment cmt">#include mod.revisal( &amp;blk )</span>
666
+ <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> }
667
+ <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>)
668
+ <span class="ruby-identifier">include</span> <span class="ruby-identifier">m</span>
669
+ <span class="ruby-keyword kw">end</span>
670
+ </pre>
671
+ </div>
672
+ </div>
673
+ </div>
674
+ <div class="method">
675
+ <div class="title">
676
+ <a name="M000168"></a><b>is</b>(*mods)
677
+ </div>
678
+ <div class="description">
679
+ <p>
680
+ alias_method :<a href="Module.html#M000168">is</a>, :include
681
+ </p>
682
+ </div>
683
+ <div class="sourcecode">
684
+ <p class="source-link">[ <a href="javascript:toggleSource('M000168_source')" id="l_M000168_source">show source</a> ]</p>
685
+ <div id="M000168_source" class="dyn-source">
686
+ <pre>
687
+ <span class="ruby-comment cmt"># File lib/facets/module/is.rb, line 27</span>
688
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">mods</span>)
689
+ <span class="ruby-identifier">mods</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">mod</span><span class="ruby-operator">|</span>
690
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-identifier">:Self</span>)
691
+ <span class="ruby-identifier">extend</span> <span class="ruby-identifier">mod</span><span class="ruby-operator">::</span><span class="ruby-constant">Self</span>
692
+ <span class="ruby-comment cmt"># pass it along if module</span>
693
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">instance_of?</span>(<span class="ruby-constant">Module</span>)
694
+ <span class="ruby-identifier">const_set</span>(<span class="ruby-identifier">:Self</span>, <span class="ruby-constant">Module</span>.<span class="ruby-identifier">new</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">const_defined?</span>(<span class="ruby-identifier">:Self</span>)
695
+ <span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">:Self</span>).<span class="ruby-identifier">send</span>(<span class="ruby-identifier">:include</span>, <span class="ruby-identifier">mod</span><span class="ruby-operator">::</span><span class="ruby-constant">Self</span>)
696
+ <span class="ruby-keyword kw">end</span>
697
+ <span class="ruby-keyword kw">end</span>
698
+ <span class="ruby-keyword kw">end</span>
699
+ <span class="ruby-identifier">include</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">mods</span>)
700
+ <span class="ruby-keyword kw">end</span>
701
+ </pre>
702
+ </div>
703
+ </div>
704
+ </div>
705
+ <div class="method">
706
+ <div class="title">
707
+ <a name="M000167"></a><b>is?</b>(base)
708
+ </div>
709
+ <div class="description">
710
+ <p>
711
+ Is a given class or module an ancestor of this class or module?
712
+ </p>
713
+ <pre>
714
+ class X ; end
715
+ class Y &lt; X ; end
716
+
717
+ Y.is?(X) #=&gt; true
718
+
719
+ CREDIT: Trans
720
+ </pre>
721
+ </div>
722
+ <div class="sourcecode">
723
+ <p class="source-link">[ <a href="javascript:toggleSource('M000167_source')" id="l_M000167_source">show source</a> ]</p>
724
+ <div id="M000167_source" class="dyn-source">
725
+ <pre>
726
+ <span class="ruby-comment cmt"># File lib/facets/module/is.rb, line 13</span>
727
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is?</span>(<span class="ruby-identifier">base</span>)
728
+ <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>)
729
+ <span class="ruby-keyword kw">end</span>
730
+ </pre>
731
+ </div>
732
+ </div>
733
+ </div>
734
+ <div class="method">
735
+ <div class="title">
736
+ <a name="M000170"></a><b>modspace</b>()
737
+ </div>
738
+ <div class="description">
739
+ <p>
740
+ Returns the module&#8216;s container module.
741
+ </p>
742
+ <pre>
743
+ module Example
744
+ class Demo
745
+ end
746
+ end
747
+
748
+ Example::Demo.modspace #=&gt; Example
749
+ </pre>
750
+ <p>
751
+ See also <a href="Module.html#M000171">Module#basename</a>.
752
+ </p>
753
+ <pre>
754
+ CREDIT: Trans
755
+ </pre>
756
+ </div>
757
+ <div class="sourcecode">
758
+ <p class="source-link">[ <a href="javascript:toggleSource('M000170_source')" id="l_M000170_source">show source</a> ]</p>
759
+ <div id="M000170_source" class="dyn-source">
760
+ <pre>
761
+ <span class="ruby-comment cmt"># File lib/facets/module/nesting.rb, line 30</span>
762
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">modspace</span>
763
+ <span class="ruby-identifier">space</span> = <span class="ruby-identifier">name</span>[ <span class="ruby-value">0</span><span class="ruby-operator">...</span>(<span class="ruby-identifier">name</span>.<span class="ruby-identifier">rindex</span>( <span class="ruby-value str">'::'</span> ) <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)]
764
+ <span class="ruby-identifier">space</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-value">? </span><span class="ruby-constant">Object</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">space</span>)
765
+ <span class="ruby-keyword kw">end</span>
766
+ </pre>
767
+ </div>
768
+ </div>
769
+ </div>
770
+ <div class="method">
771
+ <div class="title">
772
+ <a name="M000163"></a><b>module_load</b>( path )
773
+ </div>
774
+ <div class="description">
775
+ <p>
776
+ Load file into module/class namespace.
777
+ </p>
778
+ <pre>
779
+ CREDIT: Trans
780
+ </pre>
781
+ </div>
782
+ <div class="aka">
783
+ This method is also aliased as
784
+ <a href="Module.html#M000166">class_load</a>
785
+ </div>
786
+ <div class="sourcecode">
787
+ <p class="source-link">[ <a href="javascript:toggleSource('M000163_source')" id="l_M000163_source">show source</a> ]</p>
788
+ <div id="M000163_source" class="dyn-source">
789
+ <pre>
790
+ <span class="ruby-comment cmt"># File lib/facets/module/module_load.rb, line 9</span>
791
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">module_load</span>( <span class="ruby-identifier">path</span> )
792
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">path</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/^[\/~.]/</span>
793
+ <span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">path</span>)
794
+ <span class="ruby-keyword kw">else</span>
795
+ <span class="ruby-identifier">$LOAD_PATH</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">lp</span><span class="ruby-operator">|</span>
796
+ <span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">lp</span>,<span class="ruby-identifier">path</span>)
797
+ <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">file</span>)
798
+ <span class="ruby-identifier">file</span> = <span class="ruby-keyword kw">nil</span>
799
+ <span class="ruby-keyword kw">end</span>
800
+ <span class="ruby-keyword kw">end</span>
801
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">LoadError</span>, <span class="ruby-node">&quot;no such file to load -- #{path}&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file</span>
802
+ <span class="ruby-identifier">module_eval</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">file</span>))
803
+ <span class="ruby-keyword kw">end</span>
804
+ </pre>
805
+ </div>
806
+ </div>
807
+ </div>
808
+ <div class="method">
809
+ <div class="title">
810
+ <a name="M000162"></a><b>module_method_defined?</b>(meth)
811
+ </div>
812
+ <div class="description">
813
+ <p>
814
+ Alias for singleton_method_defined?
815
+ </p>
816
+ </div>
817
+ </div>
818
+ <div class="method">
819
+ <div class="title">
820
+ <a name="M000164"></a><b>module_require</b>( path )
821
+ </div>
822
+ <div class="description">
823
+ <p>
824
+ Require file into module/class namespace.
825
+ </p>
826
+ <pre>
827
+ CREDIT: Trans
828
+ </pre>
829
+ </div>
830
+ <div class="aka">
831
+ This method is also aliased as
832
+ <a href="Module.html#M000165">class_require</a>
833
+ </div>
834
+ <div class="sourcecode">
835
+ <p class="source-link">[ <a href="javascript:toggleSource('M000164_source')" id="l_M000164_source">show source</a> ]</p>
836
+ <div id="M000164_source" class="dyn-source">
837
+ <pre>
838
+ <span class="ruby-comment cmt"># File lib/facets/module/module_load.rb, line 27</span>
839
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">module_require</span>( <span class="ruby-identifier">path</span> )
840
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">path</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/^[\/~.]/</span>
841
+ <span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">path</span>)
842
+ <span class="ruby-keyword kw">else</span>
843
+ <span class="ruby-identifier">$LOAD_PATH</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">lp</span><span class="ruby-operator">|</span>
844
+ <span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">lp</span>,<span class="ruby-identifier">path</span>)
845
+ <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">file</span>)
846
+ <span class="ruby-identifier">file</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'.rb'</span>
847
+ <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">file</span>)
848
+ <span class="ruby-identifier">file</span> = <span class="ruby-keyword kw">nil</span>
849
+ <span class="ruby-keyword kw">end</span>
850
+ <span class="ruby-keyword kw">end</span>
851
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">LoadError</span>, <span class="ruby-node">&quot;no such file to load -- #{path}&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file</span>
852
+ <span class="ruby-ivar">@loaded</span> <span class="ruby-operator">||=</span> {}
853
+ <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@loaded</span>.<span class="ruby-identifier">key?</span>(<span class="ruby-identifier">file</span>)
854
+ <span class="ruby-keyword kw">false</span>
855
+ <span class="ruby-keyword kw">else</span>
856
+ <span class="ruby-ivar">@loaded</span>[<span class="ruby-identifier">file</span>] = <span class="ruby-keyword kw">true</span>
857
+ <span class="ruby-identifier">script</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">file</span>)
858
+ <span class="ruby-identifier">module_eval</span>(<span class="ruby-identifier">script</span>)
859
+ <span class="ruby-keyword kw">true</span>
860
+ <span class="ruby-keyword kw">end</span>
861
+ <span class="ruby-keyword kw">end</span>
862
+ </pre>
863
+ </div>
864
+ </div>
865
+ </div>
866
+ <div class="method">
867
+ <div class="title">
868
+ <a name="M000169"></a><b>nesting</b>()
869
+ </div>
870
+ <div class="description">
871
+ <p>
872
+ Show a modules <a href="Module.html#M000169">nesting</a> in module
873
+ namespaces.
874
+ </p>
875
+ <pre>
876
+ A::B::C.nesting #=&gt; [ A, A::B ]
877
+
878
+ CREDIT: Trans
879
+ </pre>
880
+ </div>
881
+ <div class="sourcecode">
882
+ <p class="source-link">[ <a href="javascript:toggleSource('M000169_source')" id="l_M000169_source">show source</a> ]</p>
883
+ <div id="M000169_source" class="dyn-source">
884
+ <pre>
885
+ <span class="ruby-comment cmt"># File lib/facets/module/nesting.rb, line 9</span>
886
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">nesting</span>
887
+ <span class="ruby-identifier">n</span> = []
888
+ <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-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">mod</span>, <span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
889
+ <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>
890
+ <span class="ruby-keyword kw">end</span>
891
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">n</span>
892
+ <span class="ruby-keyword kw">end</span>
893
+ </pre>
894
+ </div>
895
+ </div>
896
+ </div>
897
+ <div class="method">
898
+ <div class="title">
899
+ <a name="M000158"></a><b>pathize</b>()
900
+ </div>
901
+ <div class="description">
902
+ <p>
903
+ Converts a class name to a unix path
904
+ </p>
905
+ <p>
906
+ Examples
907
+ </p>
908
+ <pre>
909
+ CoolClass.pathize #=&gt; &quot;cool_class&quot;
910
+ My::CoolClass.pathize #=&gt; &quot;my/cool_class&quot;
911
+ </pre>
912
+ </div>
913
+ <div class="sourcecode">
914
+ <p class="source-link">[ <a href="javascript:toggleSource('M000158_source')" id="l_M000158_source">show source</a> ]</p>
915
+ <div id="M000158_source" class="dyn-source">
916
+ <pre>
917
+ <span class="ruby-comment cmt"># File lib/facets/module/pathize.rb, line 9</span>
918
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">pathize</span>
919
+ <span class="ruby-identifier">to_s</span>.
920
+ <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/::/</span>, <span class="ruby-value str">'/'</span>).
921
+ <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/([A-Z]+)([A-Z][a-z])/</span>,<span class="ruby-value str">'\1_\2'</span>).
922
+ <span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/([a-z\d])([A-Z])/</span>,<span class="ruby-value str">'\1_\2'</span>).
923
+ <span class="ruby-identifier">tr</span>(<span class="ruby-value str">&quot;-&quot;</span>, <span class="ruby-value str">&quot;_&quot;</span>).
924
+ <span class="ruby-identifier">downcase</span>
925
+ <span class="ruby-keyword kw">end</span>
926
+ </pre>
927
+ </div>
928
+ </div>
929
+ </div>
930
+ <div class="method">
931
+ <div class="title">
932
+ <a name="M000148"></a><b>prepend</b>(aspect)
933
+ </div>
934
+ <div class="description">
935
+ <p>
936
+ Prepend an <tt>aspect</tt> module to a module.
937
+ </p>
938
+ <pre>
939
+ module X
940
+ def x; &quot;x&quot;; end
941
+ end
942
+
943
+ module U
944
+ def x; '{' + super + '}'; end
945
+ end
946
+
947
+ X.prepend U
948
+
949
+ X.x # =&gt; &quot;{x}&quot;
950
+
951
+ CREDIT Trans
952
+ </pre>
953
+ </div>
954
+ <div class="sourcecode">
955
+ <p class="source-link">[ <a href="javascript:toggleSource('M000148_source')" id="l_M000148_source">show source</a> ]</p>
956
+ <div id="M000148_source" class="dyn-source">
957
+ <pre>
958
+ <span class="ruby-comment cmt"># File lib/facets/module/prepend.rb, line 19</span>
959
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">prepend</span>(<span class="ruby-identifier">aspect</span>)
960
+ <span class="ruby-identifier">aspect</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">:include</span>, <span class="ruby-keyword kw">self</span>)
961
+ <span class="ruby-identifier">extend</span> <span class="ruby-identifier">aspect</span>
962
+ <span class="ruby-keyword kw">end</span>
963
+ </pre>
964
+ </div>
965
+ </div>
966
+ </div>
967
+ <div class="method">
968
+ <div class="title">
969
+ <a name="M000152"></a><b>private_conflict?</b>(other)
970
+ </div>
971
+ <div class="description">
972
+ <p>
973
+ Like conflict?, but checks only private methods.
974
+ </p>
975
+ </div>
976
+ <div class="sourcecode">
977
+ <p class="source-link">[ <a href="javascript:toggleSource('M000152_source')" id="l_M000152_source">show source</a> ]</p>
978
+ <div id="M000152_source" class="dyn-source">
979
+ <pre>
980
+ <span class="ruby-comment cmt"># File lib/facets/module/conflict.rb, line 43</span>
981
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">private_conflict?</span>(<span class="ruby-identifier">other</span>)
982
+ <span class="ruby-identifier">c</span> = <span class="ruby-identifier">private_instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">private_instance_methods</span>(<span class="ruby-keyword kw">true</span>)
983
+ <span class="ruby-identifier">c</span>.<span class="ruby-identifier">empty</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">false</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">c</span>
984
+ <span class="ruby-keyword kw">end</span>
985
+ </pre>
986
+ </div>
987
+ </div>
988
+ </div>
989
+ <div class="method">
990
+ <div class="title">
991
+ <a name="M000153"></a><b>protected_conflict?</b>(other)
992
+ </div>
993
+ <div class="description">
994
+ <p>
995
+ Like conflict?, but checks only protected methods.
996
+ </p>
997
+ </div>
998
+ <div class="sourcecode">
999
+ <p class="source-link">[ <a href="javascript:toggleSource('M000153_source')" id="l_M000153_source">show source</a> ]</p>
1000
+ <div id="M000153_source" class="dyn-source">
1001
+ <pre>
1002
+ <span class="ruby-comment cmt"># File lib/facets/module/conflict.rb, line 50</span>
1003
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">protected_conflict?</span>(<span class="ruby-identifier">other</span>)
1004
+ <span class="ruby-identifier">c</span> = <span class="ruby-identifier">protected_instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">protected_instance_methods</span>(<span class="ruby-keyword kw">true</span>)
1005
+ <span class="ruby-identifier">c</span>.<span class="ruby-identifier">empty</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">false</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">c</span>
1006
+ <span class="ruby-keyword kw">end</span>
1007
+ </pre>
1008
+ </div>
1009
+ </div>
1010
+ </div>
1011
+ <div class="method">
1012
+ <div class="title">
1013
+ <a name="M000151"></a><b>public_conflict?</b>(other)
1014
+ </div>
1015
+ <div class="description">
1016
+ <p>
1017
+ Like conflict?, but checks only public methods.
1018
+ </p>
1019
+ </div>
1020
+ <div class="sourcecode">
1021
+ <p class="source-link">[ <a href="javascript:toggleSource('M000151_source')" id="l_M000151_source">show source</a> ]</p>
1022
+ <div id="M000151_source" class="dyn-source">
1023
+ <pre>
1024
+ <span class="ruby-comment cmt"># File lib/facets/module/conflict.rb, line 36</span>
1025
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">public_conflict?</span>(<span class="ruby-identifier">other</span>)
1026
+ <span class="ruby-identifier">c</span> = <span class="ruby-identifier">public_instance_methods</span>(<span class="ruby-keyword kw">true</span>) <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">public_instance_methods</span>(<span class="ruby-keyword kw">true</span>)
1027
+ <span class="ruby-identifier">c</span>.<span class="ruby-identifier">empty</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">false</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">c</span>
1028
+ <span class="ruby-keyword kw">end</span>
1029
+ </pre>
1030
+ </div>
1031
+ </div>
1032
+ </div>
1033
+ <div class="method">
1034
+ <div class="title">
1035
+ <a name="M000175"></a><b>revisal</b>(&amp;blk)
1036
+ </div>
1037
+ <div class="description">
1038
+ <p>
1039
+ Alias for <a href="Module.html#M000174">revise</a>
1040
+ </p>
1041
+ </div>
1042
+ </div>
1043
+ <div class="method">
1044
+ <div class="title">
1045
+ <a name="M000174"></a><b>revise</b>(&amp;blk)
1046
+ </div>
1047
+ <div class="description">
1048
+ <p>
1049
+ Return a new module based on another. This includes the original module
1050
+ into the new one.
1051
+ </p>
1052
+ <pre>
1053
+ CREDIT: Trans
1054
+ </pre>
1055
+ </div>
1056
+ <div class="aka">
1057
+ This method is also aliased as
1058
+ <a href="Module.html#M000175">revisal</a>
1059
+ </div>
1060
+ <div class="sourcecode">
1061
+ <p class="source-link">[ <a href="javascript:toggleSource('M000174_source')" id="l_M000174_source">show source</a> ]</p>
1062
+ <div id="M000174_source" class="dyn-source">
1063
+ <pre>
1064
+ <span class="ruby-comment cmt"># File lib/facets/module/revise.rb, line 8</span>
1065
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">revise</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">blk</span>)
1066
+ <span class="ruby-identifier">base</span> = <span class="ruby-keyword kw">self</span>
1067
+ <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> }
1068
+ <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>)
1069
+ <span class="ruby-identifier">nm</span>
1070
+ <span class="ruby-keyword kw">end</span>
1071
+ </pre>
1072
+ </div>
1073
+ </div>
1074
+ </div>
1075
+ <div class="method">
1076
+ <div class="title">
1077
+ <a name="M000161"></a><b>singleton_method_defined?</b>(meth)
1078
+ </div>
1079
+ <div class="description">
1080
+ <p>
1081
+ Query whether a normal (singleton) method <a
1082
+ href="Module.html#M000168">is</a> defined for the module.
1083
+ </p>
1084
+ <pre>
1085
+ CREDIT: Gavin Sinclair
1086
+ CREDIT: Noah Gibbs
1087
+ </pre>
1088
+ </div>
1089
+ <div class="aka">
1090
+ This method is also aliased as
1091
+ <a href="Module.html#M000162">module_method_defined?</a>
1092
+ </div>
1093
+ <div class="sourcecode">
1094
+ <p class="source-link">[ <a href="javascript:toggleSource('M000161_source')" id="l_M000161_source">show source</a> ]</p>
1095
+ <div id="M000161_source" class="dyn-source">
1096
+ <pre>
1097
+ <span class="ruby-comment cmt"># File lib/facets/module/instance_methods.rb, line 33</span>
1098
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">singleton_method_defined?</span>(<span class="ruby-identifier">meth</span>)
1099
+ <span class="ruby-identifier">singleton_methods</span>(<span class="ruby-keyword kw">true</span>).<span class="ruby-identifier">find</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-operator">==</span> <span class="ruby-identifier">meth</span>.<span class="ruby-identifier">to_s</span> }
1100
+ <span class="ruby-keyword kw">end</span>
1101
+ </pre>
1102
+ </div>
1103
+ </div>
1104
+ </div>
1105
+ <div class="method">
1106
+ <div class="title">
1107
+ <a name="M000172"></a><b>spacename</b>()
1108
+ </div>
1109
+ <div class="description">
1110
+ <p>
1111
+ Returns the name of module&#8216;s container module.
1112
+ </p>
1113
+ <pre>
1114
+ module Example
1115
+ class Demo
1116
+ end
1117
+ end
1118
+
1119
+ Demo.name #=&gt; &quot;Example::Demo&quot;
1120
+ Demo.spacename #=&gt; &quot;Example&quot;
1121
+ </pre>
1122
+ <p>
1123
+ This used to be called <tt>dirname</tt>.
1124
+ </p>
1125
+ <p>
1126
+ See also <a href="Module.html#M000171">Module#basename</a>.
1127
+ </p>
1128
+ <pre>
1129
+ CREDIT: Trans
1130
+ </pre>
1131
+ </div>
1132
+ <div class="sourcecode">
1133
+ <p class="source-link">[ <a href="javascript:toggleSource('M000172_source')" id="l_M000172_source">show source</a> ]</p>
1134
+ <div id="M000172_source" class="dyn-source">
1135
+ <pre>
1136
+ <span class="ruby-comment cmt"># File lib/facets/module/nesting.rb, line 78</span>
1137
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">spacename</span>
1138
+ <span class="ruby-identifier">name</span>[<span class="ruby-value">0</span><span class="ruby-operator">...</span>(<span class="ruby-identifier">name</span>.<span class="ruby-identifier">rindex</span>(<span class="ruby-value str">'::'</span>) <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)]
1139
+ <span class="ruby-comment cmt">#name.gsub(/::[^:]*$/, '')</span>
1140
+ <span class="ruby-keyword kw">end</span>
1141
+ </pre>
1142
+ </div>
1143
+ </div>
1144
+ </div>
1145
+ <div class="method">
1146
+ <div class="title">
1147
+ <a name="M000184"></a><b>wrap</b>( sym, &amp;blk )
1148
+ </div>
1149
+ <div class="description">
1150
+ <p>
1151
+ Alias for <a href="Module.html#M000183">wrap_method</a>
1152
+ </p>
1153
+ </div>
1154
+ </div>
1155
+ <div class="method">
1156
+ <div class="title">
1157
+ <a name="M000183"></a><b>wrap_method</b>( sym, &amp;blk )
1158
+ </div>
1159
+ <div class="description">
1160
+ <p>
1161
+ Creates a new method wrapping the previous of the same name. Reference to
1162
+ the old method <a href="Module.html#M000168">is</a> passed into the new
1163
+ definition block as the first parameter.
1164
+ </p>
1165
+ <pre>
1166
+ wrap_method( sym ) { |old_meth, *args|
1167
+ old_meth.call
1168
+ ...
1169
+ }
1170
+ </pre>
1171
+ <p>
1172
+ Keep in mind that this can not be used to <a
1173
+ href="Module.html#M000184">wrap</a> methods that take a block.
1174
+ </p>
1175
+ <pre>
1176
+ CREDIT: Trans
1177
+ </pre>
1178
+ </div>
1179
+ <div class="aka">
1180
+ This method is also aliased as
1181
+ <a href="Module.html#M000184">wrap</a>
1182
+ </div>
1183
+ <div class="sourcecode">
1184
+ <p class="source-link">[ <a href="javascript:toggleSource('M000183_source')" id="l_M000183_source">show source</a> ]</p>
1185
+ <div id="M000183_source" class="dyn-source">
1186
+ <pre>
1187
+ <span class="ruby-comment cmt"># File lib/facets/module/revise.rb, line 160</span>
1188
+ <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> )
1189
+ <span class="ruby-identifier">old</span> = <span class="ruby-identifier">instance_method</span>(<span class="ruby-identifier">sym</span>)
1190
+ <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>) }
1191
+ <span class="ruby-keyword kw">end</span>
1192
+ </pre>
1193
+ </div>
1194
+ </div>
1195
+ </div>
1196
+ <div class="sectiontitle">Private Instance methods</div>
1197
+ <div class="method">
1198
+ <div class="title">
1199
+ <a name="M000143"></a><b>alias_accessor</b>(*args)
1200
+ </div>
1201
+ <div class="description">
1202
+ <p>
1203
+ As with alias_method, but alias both reader and writer.
1204
+ </p>
1205
+ <pre>
1206
+ attr_accessor :x
1207
+ self.x = 1
1208
+ alias_accessor :y, :x
1209
+ y #=&gt; 1
1210
+ self.y = 2
1211
+ x #=&gt; 2
1212
+ </pre>
1213
+ </div>
1214
+ <div class="sourcecode">
1215
+ <p class="source-link">[ <a href="javascript:toggleSource('M000143_source')" id="l_M000143_source">show source</a> ]</p>
1216
+ <div id="M000143_source" class="dyn-source">
1217
+ <pre>
1218
+ <span class="ruby-comment cmt"># File lib/facets/module/alias.rb, line 14</span>
1219
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">alias_accessor</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
1220
+ <span class="ruby-identifier">orig</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">last</span>
1221
+ <span class="ruby-identifier">args</span> = <span class="ruby-identifier">args</span> <span class="ruby-operator">-</span> [<span class="ruby-identifier">orig</span>]
1222
+ <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
1223
+ <span class="ruby-identifier">alias_method</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">orig</span>)
1224
+ <span class="ruby-identifier">alias_method</span>(<span class="ruby-node">&quot;#{name}=&quot;</span>, <span class="ruby-node">&quot;#{orig}=&quot;</span>)
1225
+ <span class="ruby-keyword kw">end</span>
1226
+ <span class="ruby-keyword kw">end</span>
1227
+ </pre>
1228
+ </div>
1229
+ </div>
1230
+ </div>
1231
+ <div class="method">
1232
+ <div class="title">
1233
+ <a name="M000147"></a><b>alias_method_chain</b>(target, feature) {|aliased_target, punctuation| ...}
1234
+ </div>
1235
+ <div class="description">
1236
+ <p>
1237
+ Encapsulates the common pattern of:
1238
+ </p>
1239
+ <pre>
1240
+ alias_method :foo_without_feature, :foo
1241
+ alias_method :foo, :foo_with_feature
1242
+ </pre>
1243
+ <p>
1244
+ With this, you simply do:
1245
+ </p>
1246
+ <pre>
1247
+ alias_method_chain :foo, :feature
1248
+ </pre>
1249
+ <p>
1250
+ And both aliases are set up for you.
1251
+ </p>
1252
+ <p>
1253
+ Query and bang methods (foo?, foo!) keep the same punctuation:
1254
+ </p>
1255
+ <pre>
1256
+ alias_method_chain :foo?, :feature
1257
+ </pre>
1258
+ <p>
1259
+ <a href="Module.html#M000168">is</a> equivalent to
1260
+ </p>
1261
+ <pre>
1262
+ alias_method :foo_without_feature?, :foo?
1263
+ alias_method :foo?, :foo_with_feature?
1264
+ </pre>
1265
+ <p>
1266
+ so you can safely chain foo, foo?, and foo! with the same feature.
1267
+ </p>
1268
+ <pre>
1269
+ CREDIT: Bitsweat
1270
+ CREDIT: Rails Team
1271
+ </pre>
1272
+ </div>
1273
+ <div class="sourcecode">
1274
+ <p class="source-link">[ <a href="javascript:toggleSource('M000147_source')" id="l_M000147_source">show source</a> ]</p>
1275
+ <div id="M000147_source" class="dyn-source">
1276
+ <pre>
1277
+ <span class="ruby-comment cmt"># File lib/facets/module/alias.rb, line 93</span>
1278
+ <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>)
1279
+ <span class="ruby-comment cmt"># Strip out punctuation on predicates or bang methods since</span>
1280
+ <span class="ruby-comment cmt"># e.g. target?_without_feature is not a valid method name.</span>
1281
+ <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>
1282
+ <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">aliased_target</span>, <span class="ruby-identifier">punctuation</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
1283
+
1284
+ <span class="ruby-identifier">with_method</span>, <span class="ruby-identifier">without_method</span> = <span class="ruby-node">&quot;#{aliased_target}_with_#{feature}#{punctuation}&quot;</span>, <span class="ruby-node">&quot;#{aliased_target}_without_#{feature}#{punctuation}&quot;</span>
1285
+
1286
+ <span class="ruby-identifier">alias_method</span> <span class="ruby-identifier">without_method</span>, <span class="ruby-identifier">target</span>
1287
+ <span class="ruby-identifier">alias_method</span> <span class="ruby-identifier">target</span>, <span class="ruby-identifier">with_method</span>
1288
+
1289
+ <span class="ruby-keyword kw">case</span>
1290
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">public_method_defined?</span>(<span class="ruby-identifier">without_method</span>)
1291
+ <span class="ruby-identifier">public</span> <span class="ruby-identifier">target</span>
1292
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">protected_method_defined?</span>(<span class="ruby-identifier">without_method</span>)
1293
+ <span class="ruby-identifier">protected</span> <span class="ruby-identifier">target</span>
1294
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">without_method</span>)
1295
+ <span class="ruby-identifier">private</span> <span class="ruby-identifier">target</span>
1296
+ <span class="ruby-keyword kw">end</span>
1297
+ <span class="ruby-keyword kw">end</span>
1298
+ </pre>
1299
+ </div>
1300
+ </div>
1301
+ </div>
1302
+ <div class="method">
1303
+ <div class="title">
1304
+ <a name="M000146"></a><b>alias_module_function</b>(new, old)
1305
+ </div>
1306
+ <div class="description">
1307
+ <p>
1308
+ Alias a module function so that the alias <a
1309
+ href="Module.html#M000168">is</a> also a module function. The typical
1310
+ alias_method does not do this.
1311
+ </p>
1312
+ <pre>
1313
+ module Demo
1314
+ module_function
1315
+ def hello
1316
+ &quot;Hello&quot;
1317
+ end
1318
+ end
1319
+
1320
+ Demo.hello #=&gt; Hello
1321
+
1322
+ module Demo
1323
+ alias_module_function( :hi , :hello )
1324
+ end
1325
+
1326
+ Demo.hi #=&gt; Hello
1327
+ </pre>
1328
+ </div>
1329
+ <div class="sourcecode">
1330
+ <p class="source-link">[ <a href="javascript:toggleSource('M000146_source')" id="l_M000146_source">show source</a> ]</p>
1331
+ <div id="M000146_source" class="dyn-source">
1332
+ <pre>
1333
+ <span class="ruby-comment cmt"># File lib/facets/module/alias.rb, line 63</span>
1334
+ <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>)
1335
+ <span class="ruby-identifier">alias_method</span>(<span class="ruby-identifier">new</span>, <span class="ruby-identifier">old</span>)
1336
+ <span class="ruby-identifier">module_function</span>(<span class="ruby-identifier">new</span>)
1337
+ <span class="ruby-keyword kw">end</span>
1338
+ </pre>
1339
+ </div>
1340
+ </div>
1341
+ </div>
1342
+ <div class="method">
1343
+ <div class="title">
1344
+ <a name="M000144"></a><b>alias_reader</b>(*args)
1345
+ </div>
1346
+ <div class="description">
1347
+ <p>
1348
+ As with <a href="Module.html#M000143">alias_accessor</a>, but just for the
1349
+ reader. This <a href="Module.html#M000168">is</a> basically the same as
1350
+ alias_method.
1351
+ </p>
1352
+ </div>
1353
+ <div class="sourcecode">
1354
+ <p class="source-link">[ <a href="javascript:toggleSource('M000144_source')" id="l_M000144_source">show source</a> ]</p>
1355
+ <div id="M000144_source" class="dyn-source">
1356
+ <pre>
1357
+ <span class="ruby-comment cmt"># File lib/facets/module/alias.rb, line 26</span>
1358
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">alias_reader</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
1359
+ <span class="ruby-identifier">orig</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">last</span>
1360
+ <span class="ruby-identifier">args</span> = <span class="ruby-identifier">args</span> <span class="ruby-operator">-</span> [<span class="ruby-identifier">orig</span>]
1361
+ <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
1362
+ <span class="ruby-identifier">alias_method</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">orig</span>)
1363
+ <span class="ruby-keyword kw">end</span>
1364
+ <span class="ruby-keyword kw">end</span>
1365
+ </pre>
1366
+ </div>
1367
+ </div>
1368
+ </div>
1369
+ <div class="method">
1370
+ <div class="title">
1371
+ <a name="M000145"></a><b>alias_writer</b>(*args)
1372
+ </div>
1373
+ <div class="description">
1374
+ <p>
1375
+ As with alias_method but does the writer instead.
1376
+ </p>
1377
+ </div>
1378
+ <div class="sourcecode">
1379
+ <p class="source-link">[ <a href="javascript:toggleSource('M000145_source')" id="l_M000145_source">show source</a> ]</p>
1380
+ <div id="M000145_source" class="dyn-source">
1381
+ <pre>
1382
+ <span class="ruby-comment cmt"># File lib/facets/module/alias.rb, line 36</span>
1383
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">alias_writer</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
1384
+ <span class="ruby-identifier">orig</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">last</span>
1385
+ <span class="ruby-identifier">args</span> = <span class="ruby-identifier">args</span> <span class="ruby-operator">-</span> [<span class="ruby-identifier">orig</span>]
1386
+ <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
1387
+ <span class="ruby-identifier">alias_method</span>(<span class="ruby-node">&quot;#{name}=&quot;</span>, <span class="ruby-node">&quot;#{orig}=&quot;</span>)
1388
+ <span class="ruby-keyword kw">end</span>
1389
+ <span class="ruby-keyword kw">end</span>
1390
+ </pre>
1391
+ </div>
1392
+ </div>
1393
+ </div>
1394
+ <div class="method">
1395
+ <div class="title">
1396
+ <a name="M000154"></a><b>include_function_module</b>(*mod)
1397
+ </div>
1398
+ <div class="description">
1399
+ <p>
1400
+ Include module and apply module_fuction to the included methods.
1401
+ </p>
1402
+ <pre>
1403
+ module Utils
1404
+ module_function
1405
+ def foo; &quot;foo&quot;; end
1406
+ end
1407
+
1408
+ module UtilsPlus
1409
+ include_function_module Utils
1410
+ end
1411
+
1412
+ CREDIT: Trans
1413
+ </pre>
1414
+ </div>
1415
+ <div class="sourcecode">
1416
+ <p class="source-link">[ <a href="javascript:toggleSource('M000154_source')" id="l_M000154_source">show source</a> ]</p>
1417
+ <div id="M000154_source" class="dyn-source">
1418
+ <pre>
1419
+ <span class="ruby-comment cmt"># File lib/facets/module/include_function_module.rb, line 19</span>
1420
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">include_function_module</span> <span class="ruby-operator">*</span><span class="ruby-identifier">mod</span>
1421
+ <span class="ruby-identifier">include</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">mod</span>)
1422
+ <span class="ruby-identifier">module_function</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">mod</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">private_instance_methods</span> <span class="ruby-operator">&amp;</span> <span class="ruby-identifier">m</span>.<span class="ruby-identifier">methods</span>(<span class="ruby-keyword kw">false</span>)}.<span class="ruby-identifier">flatten</span>)
1423
+ <span class="ruby-keyword kw">end</span>
1424
+ </pre>
1425
+ </div>
1426
+ </div>
1427
+ </div>
1428
+ <div class="method">
1429
+ <div class="title">
1430
+ <a name="M000180"></a><b>redef</b>(sym, aka=nil, &amp;blk)
1431
+ </div>
1432
+ <div class="description">
1433
+ <p>
1434
+ Alias for <a href="Module.html#M000177">redefine_method</a>
1435
+ </p>
1436
+ </div>
1437
+ </div>
1438
+ <div class="method">
1439
+ <div class="title">
1440
+ <a name="M000177"></a><b>redefine_method</b>(sym, aka=nil, &amp;blk)
1441
+ </div>
1442
+ <div class="description">
1443
+ <p>
1444
+ Creates a new method for a pre-existing method.
1445
+ </p>
1446
+ <p>
1447
+ If <em>aka</em> <a href="Module.html#M000168">is</a> given, then the method
1448
+ being redefined will first be aliased to this name.
1449
+ </p>
1450
+ <pre>
1451
+ class Greeter
1452
+ def hello ; &quot;Hello&quot; ; end
1453
+ end
1454
+
1455
+ Greeter.new.hello #=&gt; &quot;Hello&quot;
1456
+
1457
+ class Greeter
1458
+ redefine_method( :hello, :hi ) do
1459
+ hi + &quot;, friend!&quot;
1460
+ end
1461
+ end
1462
+
1463
+ Greeter.new.hello #=&gt; &quot;Hello, friend!&quot;
1464
+
1465
+ CREDIT: Trans
1466
+ </pre>
1467
+ </div>
1468
+ <div class="aka">
1469
+ This method is also aliased as
1470
+ <a href="Module.html#M000180">redef</a>
1471
+ </div>
1472
+ <div class="sourcecode">
1473
+ <p class="source-link">[ <a href="javascript:toggleSource('M000177_source')" id="l_M000177_source">show source</a> ]</p>
1474
+ <div id="M000177_source" class="dyn-source">
1475
+ <pre>
1476
+ <span class="ruby-comment cmt"># File lib/facets/module/revise.rb, line 76</span>
1477
+ <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>)
1478
+ <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> )
1479
+ <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>
1480
+ <span class="ruby-identifier">undef_method</span>( <span class="ruby-identifier">sym</span> )
1481
+ <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> )
1482
+ <span class="ruby-keyword kw">end</span>
1483
+ </pre>
1484
+ </div>
1485
+ </div>
1486
+ </div>
1487
+ <div class="method">
1488
+ <div class="title">
1489
+ <a name="M000181"></a><b>redirect</b>( method_hash )
1490
+ </div>
1491
+ <div class="description">
1492
+ <p>
1493
+ Alias for <a href="Module.html#M000178">redirect_method</a>
1494
+ </p>
1495
+ </div>
1496
+ </div>
1497
+ <div class="method">
1498
+ <div class="title">
1499
+ <a name="M000178"></a><b>redirect_method</b>( method_hash )
1500
+ </div>
1501
+ <div class="description">
1502
+ <p>
1503
+ Redirect methods to other methods. This simply defines methods by the name
1504
+ of a hash key which calls the method with the name of the hash&#8216;s
1505
+ value.
1506
+ </p>
1507
+ <pre>
1508
+ class Example
1509
+ redirect_method :hi =&gt; :hello, :hey =&gt; :hello
1510
+ def hello(name)
1511
+ puts &quot;Hello, #{name}.&quot;
1512
+ end
1513
+ end
1514
+
1515
+ e = Example.new
1516
+ e.hello(&quot;Bob&quot;) #=&gt; &quot;Hello, Bob.&quot;
1517
+ e.hi(&quot;Bob&quot;) #=&gt; &quot;Hello, Bob.&quot;
1518
+ e.hey(&quot;Bob&quot;) #=&gt; &quot;Hello, Bob.&quot;
1519
+ </pre>
1520
+ <p>
1521
+ The above class definition <a href="Module.html#M000168">is</a> equivalent
1522
+ to:
1523
+ </p>
1524
+ <pre>
1525
+ class Example
1526
+ def hi(*args)
1527
+ hello(*args)
1528
+ end
1529
+ def hey(*args)
1530
+ hello(*args)
1531
+ end
1532
+ def hello
1533
+ puts &quot;Hello&quot;
1534
+ end
1535
+ end
1536
+
1537
+ CREDIT: Trans
1538
+ </pre>
1539
+ </div>
1540
+ <div class="aka">
1541
+ This method is also aliased as
1542
+ <a href="Module.html#M000181">redirect</a>
1543
+ </div>
1544
+ <div class="sourcecode">
1545
+ <p class="source-link">[ <a href="javascript:toggleSource('M000178_source')" id="l_M000178_source">show source</a> ]</p>
1546
+ <div id="M000178_source" class="dyn-source">
1547
+ <pre>
1548
+ <span class="ruby-comment cmt"># File lib/facets/module/revise.rb, line 115</span>
1549
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">redirect_method</span>( <span class="ruby-identifier">method_hash</span> )
1550
+ <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>
1551
+ <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>) }
1552
+ <span class="ruby-keyword kw">end</span>
1553
+ <span class="ruby-keyword kw">end</span>
1554
+ </pre>
1555
+ </div>
1556
+ </div>
1557
+ </div>
1558
+ <div class="method">
1559
+ <div class="title">
1560
+ <a name="M000182"></a><b>rename</b>( to_sym, from_sym )
1561
+ </div>
1562
+ <div class="description">
1563
+ <p>
1564
+ Alias for <a href="Module.html#M000179">rename_method</a>
1565
+ </p>
1566
+ </div>
1567
+ </div>
1568
+ <div class="method">
1569
+ <div class="title">
1570
+ <a name="M000179"></a><b>rename_method</b>( to_sym, from_sym )
1571
+ </div>
1572
+ <div class="description">
1573
+ <p>
1574
+ Aliases a method and undefines the original.
1575
+ </p>
1576
+ <pre>
1577
+ rename_method( :to_method, :from_method )
1578
+
1579
+ CREDIT: Trans
1580
+ </pre>
1581
+ </div>
1582
+ <div class="aka">
1583
+ This method is also aliased as
1584
+ <a href="Module.html#M000182">rename</a>
1585
+ </div>
1586
+ <div class="sourcecode">
1587
+ <p class="source-link">[ <a href="javascript:toggleSource('M000179_source')" id="l_M000179_source">show source</a> ]</p>
1588
+ <div id="M000179_source" class="dyn-source">
1589
+ <pre>
1590
+ <span class="ruby-comment cmt"># File lib/facets/module/revise.rb, line 127</span>
1591
+ <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> )
1592
+ <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> )
1593
+ <span class="ruby-identifier">alias_method</span>( <span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">from_sym</span> )
1594
+ <span class="ruby-identifier">undef_method</span>( <span class="ruby-identifier">from_sym</span> )
1595
+ <span class="ruby-keyword kw">end</span>
1596
+ </pre>
1597
+ </div>
1598
+ </div>
1599
+ </div>
1600
+ </div>
1601
+
1602
+ </div>
1603
+
1604
+ </body>
1605
+ </html>