facets 1.3.0 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (400) hide show
  1. data/CHANGELOG +11 -0
  2. data/ProjectInfo +2 -2
  3. data/Rakefile +3 -1
  4. data/conf/facets/noauto +28 -13
  5. data/data/facets/index.yml +3 -4
  6. data/lib/facet/array/pot.rb +1 -0
  7. data/lib/facet/builderobject.rb +1 -0
  8. data/lib/facet/module/this.rb +1 -0
  9. data/lib/facet/rexmlbuilder.rb +1 -0
  10. data/lib/facet/string/pot.rb +1 -0
  11. data/lib/facets/core/array.rb +1 -1
  12. data/lib/facets/core/array/{slap.rb → pot.rb} +8 -7
  13. data/lib/facets/core/date.rb +6 -0
  14. data/lib/facets/core/fileutils.rb +8 -0
  15. data/lib/facets/core/gem.rb +3 -0
  16. data/lib/facets/core/kernel/autoreload.rb +5 -5
  17. data/lib/facets/core/logger.rb +2 -0
  18. data/lib/facets/core/module.rb +1 -1
  19. data/lib/facets/core/module/{let.rb → this.rb} +21 -12
  20. data/lib/facets/core/ostruct.rb +7 -0
  21. data/lib/facets/core/string.rb +1 -2
  22. data/lib/facets/core/string/{slap.rb → pot.rb} +10 -9
  23. data/lib/facets/core/string/to_a.rb +13 -7
  24. data/lib/facets/more/basicobject.rb +2 -0
  25. data/lib/facets/more/builderobject.rb +216 -0
  26. data/lib/facets/more/functor.rb +13 -12
  27. data/lib/facets/more/multiton.rb +5 -5
  28. data/lib/facets/more/progressbar.rb +7 -1
  29. data/lib/facets/more/rexmlbuilder.rb +104 -0
  30. data/lib/facets/more/tuple.rb +219 -55
  31. data/lib/facets/more/units.rb +2 -1
  32. data/test/lib/facets/core/array/test_at_rand.rb +1 -1
  33. data/test/lib/facets/core/array/test_delete_unless.rb +1 -1
  34. data/test/lib/facets/core/array/test_delete_values.rb +1 -1
  35. data/test/lib/facets/core/array/test_delete_values_at.rb +1 -1
  36. data/test/lib/facets/core/array/test_first.rb +1 -1
  37. data/test/lib/facets/core/array/test_head.rb +1 -1
  38. data/test/lib/facets/core/array/test_last_index.rb +1 -1
  39. data/test/lib/facets/core/array/test_merge.rb +1 -1
  40. data/test/lib/facets/core/array/test_mid.rb +1 -1
  41. data/test/lib/facets/core/array/test_middle.rb +1 -1
  42. data/test/lib/facets/core/array/test_op_fetch.rb +1 -1
  43. data/test/lib/facets/core/array/test_op_store.rb +1 -1
  44. data/test/lib/facets/core/array/test_pick.rb +1 -1
  45. data/test/lib/facets/core/array/test_pos.rb +1 -1
  46. data/test/lib/facets/core/array/test_pot.rb +28 -0
  47. data/test/lib/facets/core/array/test_pull.rb +1 -1
  48. data/test/lib/facets/core/array/test_rand_index.rb +1 -1
  49. data/test/lib/facets/core/array/test_rand_subset.rb +1 -1
  50. data/test/lib/facets/core/array/test_range.rb +1 -1
  51. data/test/lib/facets/core/array/test_rotate.rb +1 -1
  52. data/test/lib/facets/core/array/test_select.rb +1 -1
  53. data/test/lib/facets/core/array/test_shuffle.rb +1 -1
  54. data/test/lib/facets/core/array/test_thru.rb +1 -1
  55. data/test/lib/facets/core/array/test_to_b.rb +1 -1
  56. data/test/lib/facets/core/array/test_to_h.rb +1 -1
  57. data/test/lib/facets/core/array/test_to_hash.rb +1 -1
  58. data/test/lib/facets/core/binding/self/test_of_caller.rb +1 -1
  59. data/test/lib/facets/core/binding/test___LINE__.rb +1 -1
  60. data/test/lib/facets/core/binding/test_call_stack.rb +1 -1
  61. data/test/lib/facets/core/binding/test_called.rb +1 -1
  62. data/test/lib/facets/core/binding/test_caller.rb +1 -1
  63. data/test/lib/facets/core/binding/test_defined.rb +1 -1
  64. data/test/lib/facets/core/binding/test_eval.rb +1 -1
  65. data/test/lib/facets/core/binding/test_local_variables.rb +1 -1
  66. data/test/lib/facets/core/binding/test_method_name.rb +1 -1
  67. data/test/lib/facets/core/binding/test_op_fetch.rb +1 -1
  68. data/test/lib/facets/core/binding/test_op_store.rb +1 -1
  69. data/test/lib/facets/core/binding/test_self.rb +1 -1
  70. data/test/lib/facets/core/class/test_cattr.rb +1 -1
  71. data/test/lib/facets/core/class/test_descendents.rb +1 -1
  72. data/test/lib/facets/core/class/test_method_name.rb +1 -1
  73. data/test/lib/facets/core/class/test_remove_descendents.rb +1 -1
  74. data/test/lib/facets/core/class/test_unix_path.rb +1 -1
  75. data/test/lib/facets/core/comparable/test_at_least.rb +1 -1
  76. data/test/lib/facets/core/comparable/test_clip.rb +1 -1
  77. data/test/lib/facets/core/comparable/test_cmp.rb +1 -1
  78. data/test/lib/facets/core/continuation/self/test_create.rb +1 -1
  79. data/test/lib/facets/core/date/test_days_in_month.rb +1 -1
  80. data/test/lib/facets/core/date/test_days_of_month.rb +1 -1
  81. data/test/lib/facets/core/date/test_stamp.rb +1 -1
  82. data/test/lib/facets/core/date/test_to_date.rb +1 -1
  83. data/test/lib/facets/core/date/test_to_s.rb +1 -1
  84. data/test/lib/facets/core/date/test_to_time.rb +1 -1
  85. data/test/lib/facets/core/dir/self/test_ancestor.rb +1 -1
  86. data/test/lib/facets/core/dir/self/test_ascend.rb +1 -1
  87. data/test/lib/facets/core/enumerable/self/test_combinations.rb +1 -1
  88. data/test/lib/facets/core/enumerable/self/test_cross.rb +1 -1
  89. data/test/lib/facets/core/enumerable/test_collect_with_index.rb +1 -1
  90. data/test/lib/facets/core/enumerable/test_commonality.rb +1 -1
  91. data/test/lib/facets/core/enumerable/test_compact_collect.rb +1 -1
  92. data/test/lib/facets/core/enumerable/test_cross.rb +1 -1
  93. data/test/lib/facets/core/enumerable/test_each_combination.rb +1 -1
  94. data/test/lib/facets/core/enumerable/test_each_pair.rb +1 -1
  95. data/test/lib/facets/core/enumerable/test_each_slice.rb +1 -1
  96. data/test/lib/facets/core/enumerable/test_each_unique_pair.rb +1 -1
  97. data/test/lib/facets/core/enumerable/test_entropy.rb +1 -1
  98. data/test/lib/facets/core/enumerable/test_every.rb +1 -1
  99. data/test/lib/facets/core/enumerable/test_ew.rb +1 -1
  100. data/test/lib/facets/core/enumerable/test_filter_collect.rb +1 -1
  101. data/test/lib/facets/core/enumerable/test_find_collisions.rb +1 -1
  102. data/test/lib/facets/core/enumerable/test_frequency.rb +1 -1
  103. data/test/lib/facets/core/enumerable/test_graph.rb +1 -1
  104. data/test/lib/facets/core/enumerable/test_ideal_entropy.rb +1 -1
  105. data/test/lib/facets/core/enumerable/test_none.rb +1 -1
  106. data/test/lib/facets/core/enumerable/test_occur.rb +1 -1
  107. data/test/lib/facets/core/enumerable/test_one.rb +1 -1
  108. data/test/lib/facets/core/enumerable/test_op_pow.rb +1 -1
  109. data/test/lib/facets/core/enumerable/test_partition_by.rb +1 -1
  110. data/test/lib/facets/core/enumerable/test_permute.rb +1 -1
  111. data/test/lib/facets/core/enumerable/test_probability.rb +1 -1
  112. data/test/lib/facets/core/enumerable/test_to_h.rb +1 -1
  113. data/test/lib/facets/core/enumerable/test_uniq_by.rb +1 -1
  114. data/test/lib/facets/core/file/self/test_create.rb +1 -1
  115. data/test/lib/facets/core/file/self/test_open_as_string.rb +1 -1
  116. data/test/lib/facets/core/file/self/test_read_list.rb +1 -1
  117. data/test/lib/facets/core/file/self/test_sanitize.rb +1 -1
  118. data/test/lib/facets/core/file/self/test_split_all.rb +1 -1
  119. data/test/lib/facets/core/float/test_round_at.rb +1 -1
  120. data/test/lib/facets/core/float/test_round_to.rb +1 -1
  121. data/test/lib/facets/core/hash/self/test_zipnew.rb +1 -1
  122. data/test/lib/facets/core/hash/test_alias.rb +1 -1
  123. data/test/lib/facets/core/hash/test_assert_has_keys.rb +1 -1
  124. data/test/lib/facets/core/hash/test_assert_has_only_keys.rb +1 -1
  125. data/test/lib/facets/core/hash/test_at.rb +1 -1
  126. data/test/lib/facets/core/hash/test_collate.rb +1 -1
  127. data/test/lib/facets/core/hash/test_each.rb +1 -1
  128. data/test/lib/facets/core/hash/test_each_with_index.rb +1 -1
  129. data/test/lib/facets/core/hash/test_each_with_key.rb +1 -1
  130. data/test/lib/facets/core/hash/test_graph.rb +1 -1
  131. data/test/lib/facets/core/hash/test_has_keys.rb +1 -1
  132. data/test/lib/facets/core/hash/test_has_only_keys.rb +1 -1
  133. data/test/lib/facets/core/hash/test_inverse.rb +1 -1
  134. data/test/lib/facets/core/hash/test_keys_to_s.rb +1 -1
  135. data/test/lib/facets/core/hash/test_keys_to_sym.rb +1 -1
  136. data/test/lib/facets/core/hash/test_op_fetch.rb +1 -1
  137. data/test/lib/facets/core/hash/test_op_lshift.rb +1 -1
  138. data/test/lib/facets/core/hash/test_rand_key.rb +1 -1
  139. data/test/lib/facets/core/hash/test_rand_pair.rb +1 -1
  140. data/test/lib/facets/core/hash/test_rand_value.rb +1 -1
  141. data/test/lib/facets/core/hash/test_replace_each.rb +1 -1
  142. data/test/lib/facets/core/hash/test_shuffle.rb +1 -1
  143. data/test/lib/facets/core/hash/test_slice.rb +1 -1
  144. data/test/lib/facets/core/hash/test_swap.rb +1 -1
  145. data/test/lib/facets/core/hash/test_swapkey.rb +1 -1
  146. data/test/lib/facets/core/hash/test_to_h.rb +1 -1
  147. data/test/lib/facets/core/hash/test_to_ostruct.rb +1 -1
  148. data/test/lib/facets/core/hash/test_to_ostruct_recurse.rb +1 -1
  149. data/test/lib/facets/core/hash/test_traverse.rb +1 -1
  150. data/test/lib/facets/core/hash/test_update_each.rb +1 -1
  151. data/test/lib/facets/core/hash/test_update_keys.rb +1 -1
  152. data/test/lib/facets/core/hash/test_update_values.rb +1 -1
  153. data/test/lib/facets/core/hash/test_weave.rb +1 -1
  154. data/test/lib/facets/core/integer/test_factorial.rb +1 -1
  155. data/test/lib/facets/core/integer/test_multiple.rb +1 -1
  156. data/test/lib/facets/core/integer/test_ordinal.rb +1 -1
  157. data/test/lib/facets/core/integer/test_times_collect.rb +1 -1
  158. data/test/lib/facets/core/kernel/test___class__.rb +1 -1
  159. data/test/lib/facets/core/kernel/test_as.rb +1 -1
  160. data/test/lib/facets/core/kernel/test_assign_from.rb +1 -1
  161. data/test/lib/facets/core/kernel/test_assign_with.rb +1 -1
  162. data/test/lib/facets/core/kernel/test_bool.rb +1 -1
  163. data/test/lib/facets/core/kernel/test_bug.rb +1 -1
  164. data/test/lib/facets/core/kernel/test_call_stack.rb +1 -1
  165. data/test/lib/facets/core/kernel/test_called.rb +1 -1
  166. data/test/lib/facets/core/kernel/test_constant.rb +1 -1
  167. data/test/lib/facets/core/kernel/test_copy.rb +1 -1
  168. data/test/lib/facets/core/kernel/test_deep_copy.rb +1 -1
  169. data/test/lib/facets/core/kernel/test_demo.rb +1 -1
  170. data/test/lib/facets/core/kernel/test_fn.rb +1 -1
  171. data/test/lib/facets/core/kernel/test_generate_method_name.rb +1 -1
  172. data/test/lib/facets/core/kernel/test_get_by_id.rb +1 -1
  173. data/test/lib/facets/core/kernel/test_here.rb +1 -1
  174. data/test/lib/facets/core/kernel/test_in.rb +1 -1
  175. data/test/lib/facets/core/kernel/test_maybe.rb +1 -1
  176. data/test/lib/facets/core/kernel/test_metaclass.rb +1 -1
  177. data/test/lib/facets/core/kernel/test_method.rb +1 -1
  178. data/test/lib/facets/core/kernel/test_methodname.rb +1 -1
  179. data/test/lib/facets/core/kernel/test_methods.rb +1 -1
  180. data/test/lib/facets/core/kernel/test_new.rb +1 -1
  181. data/test/lib/facets/core/kernel/test_object_class.rb +1 -1
  182. data/test/lib/facets/core/kernel/test_object_hexid.rb +1 -1
  183. data/test/lib/facets/core/kernel/test_require_all.rb +1 -1
  184. data/test/lib/facets/core/kernel/test_require_esc.rb +1 -1
  185. data/test/lib/facets/core/kernel/test_require_facet.rb +1 -1
  186. data/test/lib/facets/core/kernel/test_resc.rb +1 -1
  187. data/test/lib/facets/core/kernel/test_returning.rb +1 -1
  188. data/test/lib/facets/core/kernel/test_send_as.rb +1 -1
  189. data/test/lib/facets/core/kernel/test_set_from.rb +1 -1
  190. data/test/lib/facets/core/kernel/test_set_with.rb +1 -1
  191. data/test/lib/facets/core/kernel/test_silently.rb +1 -1
  192. data/test/lib/facets/core/kernel/test_singleton.rb +1 -1
  193. data/test/lib/facets/core/kernel/test_superior.rb +1 -1
  194. data/test/lib/facets/core/kernel/test_supermethod.rb +1 -1
  195. data/test/lib/facets/core/kernel/test_this.rb +1 -1
  196. data/test/lib/facets/core/kernel/test_to_b.rb +1 -1
  197. data/test/lib/facets/core/kernel/test_to_bool.rb +1 -1
  198. data/test/lib/facets/core/kernel/test_uri.rb +1 -1
  199. data/test/lib/facets/core/kernel/test_val.rb +1 -1
  200. data/test/lib/facets/core/kernel/test_with_accessor.rb +1 -1
  201. data/test/lib/facets/core/matchdata/test_match.rb +1 -1
  202. data/test/lib/facets/core/matchdata/test_matchtree.rb +1 -1
  203. data/test/lib/facets/core/module/test_abstract.rb +1 -1
  204. data/test/lib/facets/core/module/test_alias_module_function.rb +1 -1
  205. data/test/lib/facets/core/module/test_ancestor.rb +1 -1
  206. data/test/lib/facets/core/module/test_basename.rb +1 -1
  207. data/test/lib/facets/core/module/test_by_name.rb +1 -1
  208. data/test/lib/facets/core/module/test_clone_using.rb +1 -1
  209. data/test/lib/facets/core/module/test_dirname.rb +1 -1
  210. data/test/lib/facets/core/module/test_equate_on.rb +1 -1
  211. data/test/lib/facets/core/module/test_generate_instance_method_name.rb +1 -1
  212. data/test/lib/facets/core/module/test_include_as.rb +1 -1
  213. data/test/lib/facets/core/module/test_inherit.rb +1 -1
  214. data/test/lib/facets/core/module/test_initializer.rb +1 -1
  215. data/test/lib/facets/core/module/test_instance_methods.rb +1 -1
  216. data/test/lib/facets/core/module/test_integrate.rb +1 -1
  217. data/test/lib/facets/core/module/test_let.rb +1 -1
  218. data/test/lib/facets/core/module/test_mattr.rb +1 -1
  219. data/test/lib/facets/core/module/test_memoize.rb +1 -1
  220. data/test/lib/facets/core/module/test_modspace.rb +1 -1
  221. data/test/lib/facets/core/module/test_namespace.rb +1 -1
  222. data/test/lib/facets/core/module/test_nesting.rb +1 -1
  223. data/test/lib/facets/core/module/test_on_included.rb +1 -1
  224. data/test/lib/facets/core/module/test_redef.rb +1 -1
  225. data/test/lib/facets/core/module/test_redefine_method.rb +1 -1
  226. data/test/lib/facets/core/module/test_redirect.rb +1 -1
  227. data/test/lib/facets/core/module/test_redirect_method.rb +1 -1
  228. data/test/lib/facets/core/module/test_remove.rb +1 -1
  229. data/test/lib/facets/core/module/test_rename.rb +1 -1
  230. data/test/lib/facets/core/module/test_rename_method.rb +1 -1
  231. data/test/lib/facets/core/module/test_revisal.rb +1 -1
  232. data/test/lib/facets/core/module/test_shadow_method.rb +1 -1
  233. data/test/lib/facets/core/module/test_sort_on.rb +1 -1
  234. data/test/lib/facets/core/module/test_this.rb +31 -0
  235. data/test/lib/facets/core/module/test_undef.rb +1 -1
  236. data/test/lib/facets/core/module/test_wrap.rb +1 -1
  237. data/test/lib/facets/core/module/test_wrap_method.rb +1 -1
  238. data/test/lib/facets/core/nilclass/test_blank.rb +1 -1
  239. data/test/lib/facets/core/nilclass/test_empty.rb +1 -1
  240. data/test/lib/facets/core/nilclass/test_include.rb +1 -1
  241. data/test/lib/facets/core/nilclass/test_op_fetch.rb +1 -1
  242. data/test/lib/facets/core/nilclass/test_size.rb +1 -1
  243. data/test/lib/facets/core/nilclass/test_to_h.rb +1 -1
  244. data/test/lib/facets/core/numeric/test_approx.rb +1 -1
  245. data/test/lib/facets/core/numeric/test_ceil_multiple.rb +1 -1
  246. data/test/lib/facets/core/numeric/test_succ.rb +1 -1
  247. data/test/lib/facets/core/numeric/test_to_b.rb +1 -1
  248. data/test/lib/facets/core/ostruct/test___merge__.rb +1 -1
  249. data/test/lib/facets/core/ostruct/test___update__.rb +1 -1
  250. data/test/lib/facets/core/ostruct/test_op_fetch.rb +1 -1
  251. data/test/lib/facets/core/ostruct/test_op_store.rb +1 -1
  252. data/test/lib/facets/core/proc/test_compose.rb +1 -1
  253. data/test/lib/facets/core/proc/test_to_method.rb +1 -1
  254. data/test/lib/facets/core/range/test_to_r.rb +1 -1
  255. data/test/lib/facets/core/range/test_to_range.rb +1 -1
  256. data/test/lib/facets/core/range/test_umbrella.rb +1 -1
  257. data/test/lib/facets/core/range/test_within.rb +1 -1
  258. data/test/lib/facets/core/regexp/test_arity.rb +1 -1
  259. data/test/lib/facets/core/regexp/test_to_re.rb +1 -1
  260. data/test/lib/facets/core/regexp/test_to_regexp.rb +1 -1
  261. data/test/lib/facets/core/string/self/test_interpolate.rb +1 -1
  262. data/test/lib/facets/core/string/self/test_patterns.rb +1 -1
  263. data/test/lib/facets/core/string/self/test_rand_letter.rb +1 -1
  264. data/test/lib/facets/core/string/test_align_center.rb +1 -1
  265. data/test/lib/facets/core/string/test_at_rand.rb +1 -1
  266. data/test/lib/facets/core/string/test_basename.rb +1 -1
  267. data/test/lib/facets/core/string/test_blank.rb +1 -1
  268. data/test/lib/facets/core/string/test_bracket.rb +1 -1
  269. data/test/lib/facets/core/string/test_camelcase.rb +1 -1
  270. data/test/lib/facets/core/string/test_camelize.rb +1 -1
  271. data/test/lib/facets/core/string/test_capitalized.rb +1 -1
  272. data/test/lib/facets/core/string/test_chars.rb +1 -1
  273. data/test/lib/facets/core/string/test_cmp.rb +1 -1
  274. data/test/lib/facets/core/string/test_demodulize.rb +1 -1
  275. data/test/lib/facets/core/string/test_downcase.rb +1 -1
  276. data/test/lib/facets/core/string/test_dresner.rb +1 -1
  277. data/test/lib/facets/core/string/test_each_char.rb +1 -1
  278. data/test/lib/facets/core/string/test_each_word.rb +1 -1
  279. data/test/lib/facets/core/string/test_first.rb +1 -1
  280. data/test/lib/facets/core/string/test_fold.rb +1 -1
  281. data/test/lib/facets/core/string/test_frequency.rb +1 -1
  282. data/test/lib/facets/core/string/test_humanize.rb +1 -1
  283. data/test/lib/facets/core/string/test_indent.rb +1 -1
  284. data/test/lib/facets/core/string/test_index_all.rb +1 -1
  285. data/test/lib/facets/core/string/test_last.rb +1 -1
  286. data/test/lib/facets/core/string/test_line_wrap.rb +1 -1
  287. data/test/lib/facets/core/string/test_lines.rb +1 -1
  288. data/test/lib/facets/core/string/test_lowercase.rb +1 -1
  289. data/test/lib/facets/core/string/test_margin.rb +1 -1
  290. data/test/lib/facets/core/string/test_methodize.rb +1 -1
  291. data/test/lib/facets/core/string/test_modulize.rb +1 -1
  292. data/test/lib/facets/core/string/test_mscan.rb +1 -1
  293. data/test/lib/facets/core/string/test_natcmp.rb +1 -1
  294. data/test/lib/facets/core/string/test_nchar.rb +1 -1
  295. data/test/lib/facets/core/string/test_pathize.rb +1 -1
  296. data/test/lib/facets/core/string/test_pop.rb +1 -1
  297. data/test/lib/facets/core/string/test_pot.rb +39 -0
  298. data/test/lib/facets/core/string/test_probability.rb +1 -1
  299. data/test/lib/facets/core/string/test_push.rb +1 -1
  300. data/test/lib/facets/core/string/test_quote.rb +1 -1
  301. data/test/lib/facets/core/string/test_rand_byte.rb +1 -1
  302. data/test/lib/facets/core/string/test_rand_index.rb +1 -1
  303. data/test/lib/facets/core/string/test_range.rb +1 -1
  304. data/test/lib/facets/core/string/test_range_all.rb +1 -1
  305. data/test/lib/facets/core/string/test_range_of_line.rb +1 -1
  306. data/test/lib/facets/core/string/test_regesc.rb +1 -1
  307. data/test/lib/facets/core/string/test_shatter.rb +1 -1
  308. data/test/lib/facets/core/string/test_shift.rb +1 -1
  309. data/test/lib/facets/core/string/test_shuffle.rb +1 -1
  310. data/test/lib/facets/core/string/test_similarity.rb +1 -1
  311. data/test/lib/facets/core/string/test_singular.rb +1 -1
  312. data/test/lib/facets/core/string/test_soundex.rb +1 -1
  313. data/test/lib/facets/core/string/test_succ.rb +1 -1
  314. data/test/lib/facets/core/string/test_to_a.rb +1 -1
  315. data/test/lib/facets/core/string/test_to_b.rb +1 -1
  316. data/test/lib/facets/core/string/test_to_const.rb +1 -1
  317. data/test/lib/facets/core/string/test_to_date.rb +1 -1
  318. data/test/lib/facets/core/string/test_to_proc.rb +1 -1
  319. data/test/lib/facets/core/string/test_to_re.rb +1 -1
  320. data/test/lib/facets/core/string/test_to_time.rb +1 -1
  321. data/test/lib/facets/core/string/test_unix_crypt.rb +1 -1
  322. data/test/lib/facets/core/string/test_unpack.rb +1 -1
  323. data/test/lib/facets/core/string/test_unshift.rb +1 -1
  324. data/test/lib/facets/core/string/test_upcase.rb +1 -1
  325. data/test/lib/facets/core/string/test_whitespace.rb +1 -1
  326. data/test/lib/facets/core/string/test_word_filter.rb +1 -1
  327. data/test/lib/facets/core/string/test_word_wrap.rb +1 -1
  328. data/test/lib/facets/core/string/test_words.rb +1 -1
  329. data/test/lib/facets/core/symbol/test_camelcase.rb +1 -1
  330. data/test/lib/facets/core/symbol/test_camelize.rb +1 -1
  331. data/test/lib/facets/core/symbol/test_capitalize.rb +1 -1
  332. data/test/lib/facets/core/symbol/test_capitalized.rb +1 -1
  333. data/test/lib/facets/core/symbol/test_downcase.rb +1 -1
  334. data/test/lib/facets/core/symbol/test_not.rb +1 -1
  335. data/test/lib/facets/core/symbol/test_pad.rb +1 -1
  336. data/test/lib/facets/core/symbol/test_succ.rb +1 -1
  337. data/test/lib/facets/core/symbol/test_to_const.rb +1 -1
  338. data/test/lib/facets/core/symbol/test_to_proc.rb +1 -1
  339. data/test/lib/facets/core/symbol/test_to_str.rb +1 -1
  340. data/test/lib/facets/core/symbol/test_underscore.rb +1 -1
  341. data/test/lib/facets/core/symbol/test_upcase.rb +1 -1
  342. data/test/lib/facets/core/time/test_change.rb +1 -1
  343. data/test/lib/facets/core/time/test_elapse.rb +1 -1
  344. data/test/lib/facets/core/time/test_stamp.rb +1 -1
  345. data/test/lib/facets/core/time/test_to_date.rb +1 -1
  346. data/test/lib/facets/core/time/test_to_s.rb +1 -1
  347. data/test/lib/facets/core/time/test_to_time.rb +1 -1
  348. data/test/lib/facets/more/test_annotation.rb +1 -1
  349. data/test/lib/facets/more/test_ansicode.rb +1 -1
  350. data/test/lib/facets/more/test_association.rb +1 -1
  351. data/test/lib/facets/more/test_basicobject.rb +1 -1
  352. data/test/lib/facets/more/test_bbcode.rb +1 -1
  353. data/test/lib/facets/more/test_bitmask.rb +1 -1
  354. data/test/lib/facets/more/test_bytes.rb +1 -1
  355. data/test/lib/facets/more/test_classinherit.rb +1 -1
  356. data/test/lib/facets/more/test_classmethods.rb +1 -1
  357. data/test/lib/facets/more/test_coroutine.rb +1 -1
  358. data/test/lib/facets/more/test_crypt.rb +1 -1
  359. data/test/lib/facets/more/test_dictionary.rb +1 -1
  360. data/test/lib/facets/more/test_elementor.rb +1 -1
  361. data/test/lib/facets/more/test_enumerablepass.rb +1 -1
  362. data/test/lib/facets/more/test_floatstring.rb +1 -1
  363. data/test/lib/facets/more/test_functor.rb +1 -1
  364. data/test/lib/facets/more/test_inheritor.rb +1 -1
  365. data/test/lib/facets/more/test_interval.rb +1 -1
  366. data/test/lib/facets/more/test_json.rb +1 -1
  367. data/test/lib/facets/more/test_lisp.rb +1 -1
  368. data/test/lib/facets/more/test_lisp_format.rb +1 -1
  369. data/test/lib/facets/more/test_lrucache.rb +1 -1
  370. data/test/lib/facets/more/test_mathconstants.rb +1 -1
  371. data/test/lib/facets/more/test_methodprobe.rb +1 -1
  372. data/test/lib/facets/more/test_multipliers.rb +1 -1
  373. data/test/lib/facets/more/test_multiton.rb +1 -1
  374. data/test/lib/facets/more/test_nackclass.rb +1 -1
  375. data/test/lib/facets/more/test_nilcomparable.rb +1 -1
  376. data/test/lib/facets/more/test_openobject.rb +1 -1
  377. data/test/lib/facets/more/test_overload.rb +1 -1
  378. data/test/lib/facets/more/test_paramix.rb +1 -1
  379. data/test/lib/facets/more/test_preinitialize.rb +1 -1
  380. data/test/lib/facets/more/test_promoteself.rb +1 -1
  381. data/test/lib/facets/more/test_recorder.rb +1 -1
  382. data/test/lib/facets/more/test_snapshot.rb +1 -1
  383. data/test/lib/facets/more/test_statichash.rb +1 -1
  384. data/test/lib/facets/more/test_syncarray.rb +1 -1
  385. data/test/lib/facets/more/test_synchash.rb +1 -1
  386. data/test/lib/facets/more/test_tagiterator.rb +1 -1
  387. data/test/lib/facets/more/test_timer.rb +1 -1
  388. data/test/lib/facets/more/test_times.rb +1 -1
  389. data/test/lib/facets/more/test_tuple.rb +32 -8
  390. data/test/lib/facets/more/test_typecast.rb +1 -1
  391. data/test/lib/facets/more/test_uninheritable.rb +1 -1
  392. data/test/lib/facets/more/test_units.rb +3 -2
  393. data/test/lib/facets/more/test_xoxo.rb +1 -1
  394. data/test/lib/facets/more/test_yamlstruct.rb +1 -1
  395. metadata +15 -10
  396. data/lib/facet/array/slap.rb +0 -1
  397. data/lib/facet/module/let.rb +0 -1
  398. data/lib/facet/string/slap.rb +0 -1
  399. data/lib/facet/string/to_arr.rb +0 -1
  400. data/lib/facets/core/string/to_arr.rb +0 -55
data/CHANGELOG CHANGED
@@ -1,5 +1,16 @@
1
1
  = Facets Change Log
2
2
 
3
+ == 1.3.1
4
+ * Deprecated string/to_arr, and slightly adjusted string#to_a.
5
+ (Not commonly used so not a major change.)
6
+
7
+ == 1.3.0
8
+ * Added xoxo.rb, json.rb and rtals.rb.
9
+ * Minor bug fixes.
10
+ * Moved cattr methods from module/ to class/.
11
+ * mattr methods are in limbo at the moment.
12
+ (They were aliases for cattr.)
13
+
3
14
  == 1.2.1
4
15
  * kernel/meta has been renamed to kernel/instance
5
16
 
@@ -2,8 +2,8 @@
2
2
 
3
3
  title : Facets
4
4
  name : facets
5
- version : '1.3.0'
6
- date : '2006-04-05'
5
+ version : '1.3.1'
6
+ date : '2006-04-17'
7
7
  status : Beta/Stable
8
8
 
9
9
  author : Thomas Sawyer
data/Rakefile CHANGED
@@ -23,6 +23,7 @@ GENPATH = "lib/facets/core"
23
23
  desc %{Build facet redirect directory}
24
24
  task :redirect do
25
25
  sh %{rm -R 'lib/facet'} if File.directory?('lib/facet')
26
+ print "Creating redirection facet/ files..."
26
27
  ['core','more'].each{ |d|
27
28
  from = "lib/facets"
28
29
  rbs = Dir.glob( File.join( from, d, '**/*.rb' ) )
@@ -36,6 +37,7 @@ task :redirect do
36
37
  }
37
38
  }
38
39
  }
40
+ puts "[done]"
39
41
  end
40
42
 
41
43
  #-----------------------------------------------------
@@ -97,7 +99,7 @@ end
97
99
  # file and method group files)
98
100
  #-----------------------------------------------------
99
101
  desc %{Do all preperation (index, class)}
100
- task :prep => [ :index, :class ] do
102
+ task :prep => [ :index, :class, :redirect ] do
101
103
  end
102
104
 
103
105
  #-----------------------------------------------------
@@ -10,39 +10,54 @@ array/op_store.rb
10
10
  binding/self/of_caller.rb
11
11
  hash/op_fetch.rb
12
12
  hash/op_store.rb
13
- object/new.rb
14
13
  numeric/succ.rb
15
14
  numeric/pred.rb
16
15
  string/succ.rb
17
16
  string/unpack.rb
17
+
18
18
  module/attr.rb # b/c it always makes a writer
19
19
  #module/attr_reader.rb
20
20
  #module/attr_writer.rb
21
21
  #module/attr_accessor.rb
22
22
 
23
- # These classes are not automatically loaded by Ruby
24
- # (i.e. they are part of the standard lib, not core)
25
-
26
- date/*
27
- fileutils/*
28
- ostruct/*
29
- logger/*
30
- gem/*
31
-
32
23
  # Files not included with the full feature set b/c they are potentially
33
24
  # unsafe b/c they change Ruby's default behavior in a nonconvential
34
25
  # manner and hence are not backward compatible. Using these with a
35
26
  # pre-existent program may cause the program to misbehave. So while
36
- # they can be quite useful, be sure to understand exactly what they
27
+ # they can be useful, be sure to understand exactly what they
37
28
  # do before putting them to serious use.
38
29
 
39
30
  hash/each.rb
40
31
  module/methods.rb
32
+ object/method.rb
41
33
  nilclass/op_fetch.rb
42
34
  nilclass/empty.rb
43
35
  nilclass/include.rb
44
36
  nilclass/size.rb
45
37
  nilclass/length.rb
46
38
  nilclass/method_missing.rb
47
- object/method.rb
48
- string/to_a.rb
39
+
40
+ # These classes are not automatically loaded by Ruby
41
+ # (i.e. they are part of the standard lib, not core)
42
+ # This really only applies to an "all" file which
43
+ # we currently dont have. So don;t worry about these
44
+ # for now.
45
+
46
+ #date/*
47
+ #fileutils/*
48
+ #ostruct/*
49
+ #logger/*
50
+ #gem/*
51
+
52
+ # No longer avoided. While possible incompatibilities may arise
53
+ # it is clear that would only do so under very bad programming
54
+ # practices anyway. Better to discourage those practices
55
+ # than cater to them.
56
+
57
+ #string/to_a.rb
58
+
59
+ # Can't find anything inheritently wrong with this. It may
60
+ # seem odd, but it doesn't break anything.
61
+
62
+ #object/new.rb
63
+
@@ -92,7 +92,6 @@ module:
92
92
  - instance_methods
93
93
  - integrate
94
94
  - is
95
- - let
96
95
  - mattr
97
96
  - mattr_accessor
98
97
  - mattr_reader
@@ -114,6 +113,7 @@ module:
114
113
  - shadow_method
115
114
  - singleton_to_module
116
115
  - sort_on
116
+ - this
117
117
  - undef
118
118
  - wrap
119
119
  - wrap_method
@@ -281,6 +281,7 @@ array:
281
281
  - op_store
282
282
  - pick
283
283
  - pos
284
+ - pot
284
285
  - pull
285
286
  - rand_index
286
287
  - rand_subset
@@ -288,7 +289,6 @@ array:
288
289
  - rotate
289
290
  - select
290
291
  - shuffle
291
- - slap
292
292
  - store
293
293
  - tail
294
294
  - thru
@@ -417,6 +417,7 @@ string:
417
417
  - pathize
418
418
  - plural
419
419
  - pop
420
+ - pot
420
421
  - probability
421
422
  - pull
422
423
  - push
@@ -438,14 +439,12 @@ string:
438
439
  - shuffle
439
440
  - similarity
440
441
  - singular
441
- - slap
442
442
  - soundex
443
443
  - starts_with
444
444
  - succ
445
445
  - tab
446
446
  - tabto
447
447
  - to_a
448
- - to_arr
449
448
  - to_b
450
449
  - to_const
451
450
  - to_date
@@ -0,0 +1 @@
1
+ require 'facets/core/array/pot.rb'
@@ -0,0 +1 @@
1
+ require 'facets/more/builderobject.rb'
@@ -0,0 +1 @@
1
+ require 'facets/core/module/this.rb'
@@ -0,0 +1 @@
1
+ require 'facets/more/rexmlbuilder.rb'
@@ -0,0 +1 @@
1
+ require 'facets/core/string/pot.rb'
@@ -18,6 +18,7 @@ require 'facets/core/array/op_mod'
18
18
  require 'facets/core/array/op_store'
19
19
  require 'facets/core/array/pick'
20
20
  require 'facets/core/array/pos'
21
+ require 'facets/core/array/pot'
21
22
  require 'facets/core/array/pull'
22
23
  require 'facets/core/array/rand_index'
23
24
  require 'facets/core/array/rand_subset'
@@ -25,7 +26,6 @@ require 'facets/core/array/range'
25
26
  require 'facets/core/array/rotate'
26
27
  require 'facets/core/array/select'
27
28
  require 'facets/core/array/shuffle'
28
- require 'facets/core/array/slap'
29
29
  require 'facets/core/array/store'
30
30
  require 'facets/core/array/tail'
31
31
  require 'facets/core/array/thru'
@@ -1,15 +1,15 @@
1
1
 
2
2
  class Array
3
3
 
4
- # Alias for unshift which puts an object on
5
- # on the first slot of an array. This is
6
- # the contrary of push.
4
+ # "Put On Top". This is an alias for unshift
5
+ # which puts an object# on top of the stack.
6
+ # It is the converse of push.
7
7
  #
8
8
  # a=[1,2,3]
9
- # a.slap(9) #=> [9,1,2,3]
9
+ # a.pot(9) #=> [9,1,2,3]
10
10
  # a #=> [9,1,2,3]
11
11
  #
12
- alias_method( :slap, :unshift )
12
+ alias_method( :pot, :unshift )
13
13
 
14
14
  end
15
15
 
@@ -28,10 +28,11 @@ end
28
28
 
29
29
  def test_slap
30
30
  a = [2,3]
31
- assert_equal( [1,2,3], a.slap(1) )
32
- assert_equal( [4,1,2,3], a.slap(4) )
31
+ assert_equal( [1,2,3], a.pot(1) )
32
+ assert_equal( [4,1,2,3], a.pot(4) )
33
33
  end
34
34
 
35
35
  end
36
36
 
37
37
  =end
38
+
@@ -0,0 +1,6 @@
1
+ require 'facets/core/date/days_in_month'
2
+ require 'facets/core/date/days_of_month'
3
+ require 'facets/core/date/stamp'
4
+ require 'facets/core/date/to_date'
5
+ require 'facets/core/date/to_s'
6
+ require 'facets/core/date/to_time'
@@ -0,0 +1,8 @@
1
+ require 'facets/core/fileutils/head'
2
+ require 'facets/core/fileutils/safe_ln'
3
+ require 'facets/core/fileutils/slice'
4
+ require 'facets/core/fileutils/split_all'
5
+ require 'facets/core/fileutils/tail'
6
+ require 'facets/core/fileutils/wc'
7
+ require 'facets/core/fileutils/whereis'
8
+ require 'facets/core/fileutils/which'
@@ -0,0 +1,3 @@
1
+ require 'facets/core/gem/self/active'
2
+ require 'facets/core/gem/self/gempath'
3
+ require 'facets/core/gem/self/gemspec'
@@ -1,3 +1,7 @@
1
+ #--
2
+ # Michael Neumann
3
+ # George Moschovitis <gm@navel.gr>
4
+ #++
1
5
 
2
6
  module Kernel
3
7
 
@@ -18,7 +22,7 @@ module Kernel
18
22
  include_features = true
19
23
  files = nil
20
24
 
21
- args.each { |arg|
25
+ args.each do |arg|
22
26
  case arg
23
27
  when Numeric
24
28
  check_interval = arg
@@ -84,10 +88,6 @@ module Kernel
84
88
 
85
89
  end
86
90
 
87
- # Michael Neumann
88
- # Tom Sawyer
89
- # George Moschovitis <gm@navel.gr>
90
-
91
91
  #--
92
92
  # # OLD VERSION
93
93
  # def autoreload(check_interval=10)
@@ -0,0 +1,2 @@
1
+ require 'facets/core/logger/format'
2
+ require 'facets/core/logger/format_message'
@@ -20,7 +20,6 @@ require 'facets/core/module/initializer'
20
20
  require 'facets/core/module/instance_methods'
21
21
  require 'facets/core/module/integrate'
22
22
  require 'facets/core/module/is'
23
- require 'facets/core/module/let'
24
23
  require 'facets/core/module/mattr'
25
24
  require 'facets/core/module/mattr_accessor'
26
25
  require 'facets/core/module/mattr_reader'
@@ -42,6 +41,7 @@ require 'facets/core/module/shadow_all'
42
41
  require 'facets/core/module/shadow_method'
43
42
  require 'facets/core/module/singleton_to_module'
44
43
  require 'facets/core/module/sort_on'
44
+ require 'facets/core/module/this'
45
45
  require 'facets/core/module/undef'
46
46
  require 'facets/core/module/wrap'
47
47
  require 'facets/core/module/wrap_method'
@@ -1,27 +1,36 @@
1
1
 
2
2
  require 'facets/more/functor'
3
3
 
4
- # class X
5
4
  #
6
- # let.x = 10
7
- # let.x = "Hello"
5
+ # class X
6
+ #
7
+ # this.y = "Hello"
8
+ #
9
+ # this.up = lambda { puts @y.upcase }
10
+ #
11
+ # end
12
+ #
13
+ # X.new.up #=> HELLO
8
14
  #
9
- # end
10
15
 
11
16
  class Module
12
17
 
13
- def let
18
+ def this
14
19
  klass = self
15
20
  Functor.new do |op, *args|
16
21
  case op.to_s[-1,1]
17
22
  when '='
18
23
  op = op.to_s.chomp('=')
19
- define_method( op ) do
20
- r = instance_variable_set( "@#{op}", args[0] )
21
- klass.class.class_eval %{
22
- def #{op}; @#{op}; end
23
- }
24
- r
24
+ if Proc === args[0]
25
+ define_method( op, &args[0] )
26
+ else
27
+ define_method( op ) do
28
+ r = instance_variable_set( "@#{op}", args[0] )
29
+ klass.class.class_eval %{
30
+ def #{op}; @#{op}; end
31
+ }
32
+ r
33
+ end
25
34
  end
26
35
  else
27
36
  klass.class_eval %{
@@ -41,7 +50,7 @@ end
41
50
  class TCthis < Test::Unit::TestCase
42
51
 
43
52
  class Foo
44
- let.bar = 10
53
+ this.bar = 10
45
54
  end
46
55
 
47
56
  def test01
@@ -0,0 +1,7 @@
1
+ require 'facets/core/ostruct/__merge__'
2
+ require 'facets/core/ostruct/__table__'
3
+ require 'facets/core/ostruct/__update__'
4
+ require 'facets/core/ostruct/instance'
5
+ require 'facets/core/ostruct/op_fetch'
6
+ require 'facets/core/ostruct/op_store'
7
+ require 'facets/core/ostruct/to_h'
@@ -43,6 +43,7 @@ require 'facets/core/string/ordinal'
43
43
  require 'facets/core/string/pathize'
44
44
  require 'facets/core/string/plural'
45
45
  require 'facets/core/string/pop'
46
+ require 'facets/core/string/pot'
46
47
  require 'facets/core/string/probability'
47
48
  require 'facets/core/string/pull'
48
49
  require 'facets/core/string/push'
@@ -64,14 +65,12 @@ require 'facets/core/string/shift'
64
65
  require 'facets/core/string/shuffle'
65
66
  require 'facets/core/string/similarity'
66
67
  require 'facets/core/string/singular'
67
- require 'facets/core/string/slap'
68
68
  require 'facets/core/string/soundex'
69
69
  require 'facets/core/string/starts_with'
70
70
  require 'facets/core/string/succ'
71
71
  require 'facets/core/string/tab'
72
72
  require 'facets/core/string/tabto'
73
73
  require 'facets/core/string/to_a'
74
- require 'facets/core/string/to_arr'
75
74
  require 'facets/core/string/to_b'
76
75
  require 'facets/core/string/to_const'
77
76
  require 'facets/core/string/to_date'
@@ -2,7 +2,8 @@
2
2
  class String
3
3
 
4
4
  # Like push but works from the other end of the string.
5
- def slap( str=' ' )
5
+
6
+ def pot( str=' ' )
6
7
  insert(0, str)
7
8
  end
8
9
 
@@ -26,19 +27,19 @@ end
26
27
  end
27
28
 
28
29
  def test_001
29
- #assert_raises( ArgumentError ) { @a.slap }
30
- assert_raises( ArgumentError ) { @a.slap(1,2) }
30
+ assert_raises( ArgumentError ) { @a.pot(1,2) }
31
31
  end
32
32
 
33
33
  def test_002
34
- assert_equal( "0", @a.slap("0") )
35
- assert_equal( "10", @a.slap("1") )
36
- assert_equal( "210", @a.slap("2") )
37
- assert_equal( "3210", @a.slap("3") )
38
- assert_equal( "43210", @a.slap("4") )
39
- assert_equal( "543210", @a.slap("5") )
34
+ assert_equal( "0", @a.pot("0") )
35
+ assert_equal( "10", @a.pot("1") )
36
+ assert_equal( "210", @a.pot("2") )
37
+ assert_equal( "3210", @a.pot("3") )
38
+ assert_equal( "43210", @a.pot("4") )
39
+ assert_equal( "543210", @a.pot("5") )
40
40
  end
41
41
 
42
42
  end
43
43
 
44
44
  =end
45
+
@@ -1,14 +1,19 @@
1
1
 
2
- require 'facet/string/to_arr'
3
-
4
2
  class String
5
3
 
6
- # Alias for #to_arr. See #to_arr for documentation.
7
- #
8
- # WARNING! Use this method with caution as its default behavior
9
- # (i.e. chars splitting) is nonconvential (unfortunately).
4
+ # Essentially makes #to_a an alias for split,
5
+ # with the excpetion that if no divider is given
6
+ # then the array is split on charaters, and
7
+ # NOT on the global input record divider ($/).
10
8
  #
11
- alias_method :to_a, :to_arr
9
+ # WARNING There is a slight chance of
10
+ # incompatability with other libraries which
11
+ # depend on spliting with $/ (although doing
12
+ # so is a very bad idea!).
13
+
14
+ def to_a(div=//,limit=0)
15
+ split(div,limit)
16
+ end
12
17
 
13
18
  end
14
19
 
@@ -33,3 +38,4 @@ end
33
38
  end
34
39
 
35
40
  =end
41
+