facets 0.9.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +9 -2
- data/ProjectInfo +15 -22
- data/Rakefile +17 -15
- data/TODO +2 -29
- data/lib/facet/array.rb +33 -1
- data/lib/facet/array/at_rand.rb +52 -1
- data/lib/facet/array/body.rb +2 -1
- data/lib/facet/array/delete_unless.rb +35 -1
- data/lib/facet/array/delete_values.rb +38 -1
- data/lib/facet/array/delete_values_at.rb +57 -1
- data/lib/facet/array/each_with_key.rb +9 -1
- data/lib/facet/array/first.rb +84 -1
- data/lib/facet/array/foot.rb +2 -1
- data/lib/facet/array/head.rb +80 -1
- data/lib/facet/array/last.rb +2 -1
- data/lib/facet/array/last_index.rb +35 -1
- data/lib/facet/array/merge.rb +40 -1
- data/lib/facet/array/mid.rb +50 -1
- data/lib/facet/array/middle.rb +45 -1
- data/lib/facet/array/op_fetch.rb +40 -1
- data/lib/facet/array/op_store.rb +47 -1
- data/lib/facet/array/pick.rb +68 -1
- data/lib/facet/array/pos.rb +39 -1
- data/lib/facet/array/pull.rb +37 -1
- data/lib/facet/array/rand_index.rb +30 -1
- data/lib/facet/array/rand_subset.rb +56 -1
- data/lib/facet/array/range.rb +47 -1
- data/lib/facet/array/rotate.rb +67 -1
- data/lib/facet/array/select.rb +37 -1
- data/lib/facet/array/shuffle.rb +66 -1
- data/lib/facet/array/slap.rb +37 -1
- data/lib/facet/array/store.rb +7 -1
- data/lib/facet/array/tail.rb +2 -1
- data/lib/facet/array/thru.rb +38 -1
- data/lib/facet/array/to_b.rb +31 -1
- data/lib/facet/array/to_h.rb +57 -1
- data/lib/facet/array/to_hash.rb +46 -1
- data/lib/facet/array/unzip.rb +20 -1
- data/lib/facet/binding.rb +14 -1
- data/lib/facet/binding/__DIR__.rb +2 -1
- data/lib/facet/binding/__FILE__.rb +2 -1
- data/lib/facet/binding/__LINE__.rb +58 -1
- data/lib/facet/binding/call_stack.rb +42 -1
- data/lib/facet/binding/called.rb +41 -1
- data/lib/facet/binding/caller.rb +42 -1
- data/lib/facet/binding/defined.rb +41 -1
- data/lib/facet/binding/eval.rb +42 -1
- data/lib/facet/binding/local_variables.rb +45 -1
- data/lib/facet/binding/method_name.rb +48 -1
- data/lib/facet/binding/op_fetch.rb +45 -1
- data/lib/facet/binding/op_store.rb +46 -1
- data/lib/facet/binding/self.rb +41 -1
- data/lib/facet/binding/self/of_caller.rb +122 -1
- data/lib/facet/class.rb +5 -1
- data/lib/facet/class/by_name.rb +1 -1
- data/lib/facet/class/descendents.rb +44 -1
- data/lib/facet/class/remove_descendents.rb +46 -1
- data/lib/facet/class/remove_subclasses.rb +2 -1
- data/lib/facet/class/subclasses.rb +2 -1
- data/lib/facet/comparable.rb +5 -1
- data/lib/facet/comparable/at_least.rb +53 -1
- data/lib/facet/comparable/at_most.rb +2 -1
- data/lib/facet/comparable/cap.rb +2 -1
- data/lib/facet/comparable/clip.rb +72 -1
- data/lib/facet/comparable/cmp.rb +38 -1
- data/lib/facet/continuation.rb +1 -1
- data/lib/facet/continuation/self/create.rb +71 -1
- data/lib/facet/date.rb +0 -1
- data/lib/facet/date/days_in_month.rb +42 -1
- data/lib/facet/date/days_of_month.rb +34 -1
- data/lib/facet/date/stamp.rb +52 -1
- data/lib/facet/date/to_date.rb +36 -1
- data/lib/facet/date/to_s.rb +33 -1
- data/lib/facet/date/to_time.rb +36 -1
- data/lib/facet/dir.rb +4 -1
- data/lib/facet/dir/self/ancestor.rb +33 -1
- data/lib/facet/dir/self/ascend.rb +56 -1
- data/lib/facet/dir/self/ls_r.rb +76 -1
- data/lib/facet/dir/self/recurse.rb +2 -1
- data/lib/facet/enumerable.rb +38 -1
- data/lib/facet/enumerable/collect_with_counter.rb +2 -1
- data/lib/facet/enumerable/collect_with_index.rb +51 -1
- data/lib/facet/enumerable/commonality.rb +63 -1
- data/lib/facet/enumerable/compact_collect.rb +50 -1
- data/lib/facet/enumerable/compact_map.rb +2 -1
- data/lib/facet/enumerable/cross.rb +44 -1
- data/lib/facet/enumerable/each_by.rb +2 -1
- data/lib/facet/enumerable/each_combination.rb +59 -1
- data/lib/facet/enumerable/each_pair.rb +50 -1
- data/lib/facet/enumerable/each_permutation.rb +2 -1
- data/lib/facet/enumerable/each_slice.rb +131 -1
- data/lib/facet/enumerable/each_unique_pair.rb +66 -1
- data/lib/facet/enumerable/each_with_counter.rb +8 -1
- data/lib/facet/enumerable/elementwise.rb +2 -1
- data/lib/facet/enumerable/entropy.rb +52 -1
- data/lib/facet/enumerable/every.rb +65 -1
- data/lib/facet/enumerable/ew.rb +64 -1
- data/lib/facet/enumerable/filter_collect.rb +58 -1
- data/lib/facet/enumerable/filter_map.rb +2 -1
- data/lib/facet/enumerable/find_collisions.rb +41 -1
- data/lib/facet/enumerable/frequency.rb +39 -1
- data/lib/facet/enumerable/graph.rb +59 -1
- data/lib/facet/enumerable/ideal_entropy.rb +49 -1
- data/lib/facet/enumerable/map_with_counter.rb +2 -1
- data/lib/facet/enumerable/map_with_index.rb +2 -1
- data/lib/facet/enumerable/none.rb +56 -1
- data/lib/facet/enumerable/nonuniq.rb +39 -1
- data/lib/facet/enumerable/occur.rb +62 -1
- data/lib/facet/enumerable/one.rb +65 -1
- data/lib/facet/enumerable/op_pow.rb +38 -1
- data/lib/facet/enumerable/partition_by.rb +55 -1
- data/lib/facet/enumerable/permute.rb +135 -0
- data/lib/facet/enumerable/probability.rb +59 -1
- data/lib/facet/enumerable/project.rb +11 -1
- data/lib/facet/enumerable/self/combinations.rb +68 -1
- data/lib/facet/enumerable/self/cross.rb +79 -1
- data/lib/facet/enumerable/to_h.rb +50 -1
- data/lib/facet/enumerable/uniq_by.rb +39 -1
- data/lib/facet/enumerable/where.rb +12 -1
- data/lib/facet/file.rb +5 -1
- data/lib/facet/file/self/create.rb +52 -1
- data/lib/facet/file/self/open_as_string.rb +81 -1
- data/lib/facet/file/self/read_list.rb +47 -1
- data/lib/facet/file/self/sanitize.rb +50 -1
- data/lib/facet/file/self/split_all.rb +36 -1
- data/lib/facet/fileutils.rb +0 -1
- data/lib/facet/fileutils/head.rb +2 -1
- data/lib/facet/fileutils/safe_ln.rb +38 -1
- data/lib/facet/fileutils/slice.rb +152 -1
- data/lib/facet/fileutils/split_all.rb +29 -1
- data/lib/facet/fileutils/tail.rb +2 -1
- data/lib/facet/fileutils/wc.rb +128 -1
- data/lib/facet/fileutils/whereis.rb +76 -1
- data/lib/facet/fileutils/which.rb +117 -1
- data/lib/facet/float.rb +3 -1
- data/lib/facet/float/approx.rb +42 -1
- data/lib/facet/float/round_at.rb +72 -1
- data/lib/facet/float/round_to.rb +73 -1
- data/lib/facet/hash.rb +40 -1
- data/lib/facet/hash/alias.rb +54 -1
- data/lib/facet/hash/assert_has_keys.rb +38 -1
- data/lib/facet/hash/assert_has_only_keys.rb +38 -1
- data/lib/facet/hash/at.rb +26 -1
- data/lib/facet/hash/collate.rb +53 -1
- data/lib/facet/hash/delete_unless.rb +15 -1
- data/lib/facet/hash/each.rb +61 -1
- data/lib/facet/hash/each_with_index.rb +35 -1
- data/lib/facet/hash/each_with_key.rb +32 -1
- data/lib/facet/hash/graph.rb +31 -1
- data/lib/facet/hash/has_keys.rb +37 -1
- data/lib/facet/hash/has_only_keys.rb +37 -1
- data/lib/facet/hash/inverse.rb +51 -1
- data/lib/facet/hash/join.rb +19 -1
- data/lib/facet/hash/keys_to_iv.rb +60 -1
- data/lib/facet/hash/keys_to_s.rb +80 -1
- data/lib/facet/hash/keys_to_sym.rb +91 -1
- data/lib/facet/hash/op_fetch.rb +146 -1
- data/lib/facet/hash/op_lshift.rb +28 -1
- data/lib/facet/hash/op_store.rb +2 -1
- data/lib/facet/hash/rand_key.rb +47 -1
- data/lib/facet/hash/rand_pair.rb +50 -1
- data/lib/facet/hash/rand_value.rb +60 -1
- data/lib/facet/hash/replace_each.rb +33 -1
- data/lib/facet/hash/self/zipnew.rb +37 -1
- data/lib/facet/hash/shuffle.rb +53 -1
- data/lib/facet/hash/slice.rb +33 -1
- data/lib/facet/hash/stringify_keys.rb +2 -1
- data/lib/facet/hash/swap.rb +36 -1
- data/lib/facet/hash/swapkey.rb +44 -1
- data/lib/facet/hash/symoblize_keys.rb +2 -1
- data/lib/facet/hash/to_h.rb +35 -1
- data/lib/facet/hash/to_ostruct.rb +40 -1
- data/lib/facet/hash/to_ostruct_recurse.rb +45 -1
- data/lib/facet/hash/traverse.rb +63 -1
- data/lib/facet/hash/update_each.rb +43 -1
- data/lib/facet/hash/update_keys.rb +31 -1
- data/lib/facet/hash/update_values.rb +32 -1
- data/lib/facet/hash/variablize_keys.rb +2 -1
- data/lib/facet/hash/weave.rb +88 -1
- data/lib/facet/integer.rb +8 -1
- data/lib/facet/integer/even.rb +2 -1
- data/lib/facet/integer/fac.rb +2 -0
- data/lib/facet/integer/fact.rb +2 -1
- data/lib/facet/integer/factorial.rb +61 -1
- data/lib/facet/integer/multiple.rb +69 -1
- data/lib/facet/integer/odd.rb +2 -1
- data/lib/facet/integer/ordinal.rb +41 -1
- data/lib/facet/integer/times_collect.rb +39 -1
- data/lib/facet/integer/times_map.rb +2 -1
- data/lib/facet/kernel.rb +65 -1
- data/lib/facet/kernel/__DIR__.rb +11 -0
- data/lib/facet/kernel/__class__.rb +31 -1
- data/lib/facet/kernel/__meta__.rb +28 -1
- data/lib/facet/kernel/adhoc.rb +11 -0
- data/lib/facet/kernel/as.rb +91 -1
- data/lib/facet/kernel/assign_from.rb +82 -1
- data/lib/facet/kernel/assign_with.rb +75 -1
- data/lib/facet/kernel/autoreload.rb +46 -1
- data/lib/facet/kernel/autoreload_glob.rb +36 -1
- data/lib/facet/kernel/bool.rb +77 -1
- data/lib/facet/kernel/bug.rb +39 -1
- data/lib/facet/kernel/call_stack.rb +59 -1
- data/lib/facet/kernel/called.rb +40 -1
- data/lib/facet/kernel/complete.rb +6 -1
- data/lib/facet/kernel/constant.rb +52 -1
- data/lib/facet/kernel/copy.rb +48 -1
- data/lib/facet/kernel/deep_copy.rb +49 -1
- data/lib/facet/kernel/demo.rb +46 -1
- data/lib/facet/kernel/eigenclass.rb +17 -1
- data/lib/facet/kernel/false.rb +2 -1
- data/lib/facet/kernel/fn.rb +33 -1
- data/lib/facet/kernel/generate_method_name.rb +39 -1
- data/lib/facet/kernel/get_by_id.rb +33 -1
- data/lib/facet/kernel/here.rb +34 -1
- data/lib/facet/kernel/in.rb +35 -1
- data/lib/facet/kernel/instance_assign.rb +25 -1
- data/lib/facet/kernel/instvar.rb +13 -1
- data/lib/facet/kernel/is.rb +5 -1
- data/lib/facet/kernel/maybe.rb +41 -1
- data/lib/facet/kernel/me.rb +17 -1
- data/lib/facet/kernel/meta.rb +2 -1
- data/lib/facet/kernel/metaclass.rb +42 -1
- data/lib/facet/kernel/method.rb +76 -1
- data/lib/facet/kernel/method_name.rb +49 -1
- data/lib/facet/kernel/methods.rb +79 -1
- data/lib/facet/kernel/nack.rb +12 -1
- data/lib/facet/kernel/new.rb +40 -1
- data/lib/facet/kernel/object_class.rb +31 -1
- data/lib/facet/kernel/object_hexid.rb +35 -1
- data/lib/facet/kernel/op_esc.rb +37 -1
- data/lib/facet/kernel/own.rb +17 -1
- data/lib/facet/kernel/p.rb +12 -1
- data/lib/facet/kernel/require_all.rb +44 -1
- data/lib/facet/kernel/require_esc.rb +42 -1
- data/lib/facet/kernel/require_facet.rb +41 -1
- data/lib/facet/kernel/require_local.rb +25 -1
- data/lib/facet/kernel/resc.rb +32 -1
- data/lib/facet/kernel/returning.rb +49 -1
- data/lib/facet/kernel/send_as.rb +34 -1
- data/lib/facet/kernel/set_from.rb +69 -1
- data/lib/facet/kernel/set_with.rb +74 -1
- data/lib/facet/kernel/silence_warnings.rb +2 -1
- data/lib/facet/kernel/silently.rb +41 -1
- data/lib/facet/kernel/singleton.rb +47 -1
- data/lib/facet/kernel/superior.rb +53 -1
- data/lib/facet/kernel/supermethod.rb +44 -1
- data/lib/facet/kernel/this.rb +33 -1
- data/lib/facet/kernel/to_b.rb +41 -1
- data/lib/facet/kernel/to_bool.rb +47 -1
- data/lib/facet/kernel/true.rb +2 -1
- data/lib/facet/kernel/unuri.rb +2 -1
- data/lib/facet/kernel/uri.rb +38 -1
- data/lib/facet/kernel/val.rb +52 -1
- data/lib/facet/kernel/warn_with_line.rb +30 -1
- data/lib/facet/kernel/with_accessor.rb +94 -1
- data/lib/facet/kernel/with_reader.rb +2 -1
- data/lib/facet/kernel/with_writer.rb +2 -1
- data/lib/facet/logger.rb +0 -1
- data/lib/facet/logger/format.rb +28 -1
- data/lib/facet/logger/format_message.rb +1 -1
- data/lib/facet/matchdata.rb +3 -1
- data/lib/facet/matchdata/match.rb +37 -1
- data/lib/facet/matchdata/matchset.rb +2 -1
- data/lib/facet/matchdata/matchtree.rb +62 -1
- data/lib/facet/module.rb +40 -1
- data/lib/facet/module/abstract.rb +50 -1
- data/lib/facet/module/alias_module_function.rb +57 -1
- data/lib/facet/module/ancestor.rb +38 -1
- data/lib/facet/module/attr.rb +23 -1
- data/lib/facet/module/attr_setter.rb +48 -1
- data/lib/facet/module/attr_tester.rb +56 -1
- data/lib/facet/module/basename.rb +39 -1
- data/lib/facet/module/by_name.rb +68 -1
- data/lib/facet/module/cattr_accessor.rb +141 -1
- data/lib/facet/module/cattr_reader.rb +2 -1
- data/lib/facet/module/cattr_writer.rb +2 -1
- data/lib/facet/module/clone_removing.rb +2 -1
- data/lib/facet/module/clone_renaming.rb +2 -1
- data/lib/facet/module/clone_using.rb +87 -1
- data/lib/facet/module/dirname.rb +42 -1
- data/lib/facet/module/equate_on.rb +70 -1
- data/lib/facet/module/generate_instance_method_name.rb +47 -1
- data/lib/facet/module/include_as.rb +102 -1
- data/lib/facet/module/initializer.rb +65 -1
- data/lib/facet/module/instance_methods.rb +186 -1
- data/lib/facet/module/integrate.rb +51 -1
- data/lib/facet/module/is.rb +34 -1
- data/lib/facet/module/memoize.rb +95 -1
- data/lib/facet/module/modspace.rb +43 -1
- data/lib/facet/module/namespace.rb +61 -1
- data/lib/facet/module/nesting.rb +45 -1
- data/lib/facet/module/redef.rb +31 -1
- data/lib/facet/module/redefine_method.rb +57 -1
- data/lib/facet/module/redirect.rb +30 -1
- data/lib/facet/module/redirect_method.rb +64 -1
- data/lib/facet/module/remove.rb +29 -1
- data/lib/facet/module/rename.rb +31 -1
- data/lib/facet/module/rename_method.rb +38 -1
- data/lib/facet/module/revisal.rb +49 -1
- data/lib/facet/module/shadow_all.rb +17 -1
- data/lib/facet/module/shadow_method.rb +42 -1
- data/lib/facet/module/sort_on.rb +73 -1
- data/lib/facet/module/undef.rb +29 -1
- data/lib/facet/module/wrap.rb +30 -1
- data/lib/facet/module/wrap_method.rb +48 -1
- data/lib/facet/nilclass.rb +7 -1
- data/lib/facet/nilclass/empty.rb +32 -1
- data/lib/facet/nilclass/include.rb +32 -1
- data/lib/facet/nilclass/length.rb +2 -1
- data/lib/facet/nilclass/op_fetch.rb +37 -1
- data/lib/facet/nilclass/size.rb +44 -1
- data/lib/facet/nilclass/to_f.rb +32 -1
- data/lib/facet/nilclass/to_h.rb +33 -1
- data/lib/facet/numeric.rb +5 -1
- data/lib/facet/numeric/ceil_multiple.rb +40 -1
- data/lib/facet/numeric/pred.rb +2 -1
- data/lib/facet/numeric/succ.rb +69 -1
- data/lib/facet/numeric/to_b.rb +38 -1
- data/lib/facet/ostruct.rb +0 -1
- data/lib/facet/ostruct/__merge__.rb +52 -1
- data/lib/facet/ostruct/__table__.rb +17 -1
- data/lib/facet/ostruct/__update__.rb +45 -1
- data/lib/facet/ostruct/op_fetch.rb +40 -1
- data/lib/facet/ostruct/op_store.rb +42 -1
- data/lib/facet/ostruct/to_h.rb +8 -1
- data/lib/facet/pathname.rb +2 -1
- data/lib/facet/pathname/ascend.rb +22 -1
- data/lib/facet/pathname/descend.rb +20 -1
- data/lib/facet/proc.rb +3 -1
- data/lib/facet/proc/compose.rb +62 -1
- data/lib/facet/proc/op_mul.rb +2 -1
- data/lib/facet/proc/to_method.rb +74 -1
- data/lib/facet/range.rb +4 -1
- data/lib/facet/range/to_r.rb +32 -1
- data/lib/facet/range/to_range.rb +36 -1
- data/lib/facet/range/umbrella.rb +67 -1
- data/lib/facet/range/within.rb +44 -1
- data/lib/facet/regexp.rb +3 -1
- data/lib/facet/regexp/arity.rb +41 -1
- data/lib/facet/regexp/to_re.rb +38 -1
- data/lib/facet/regexp/to_regexp.rb +36 -1
- data/lib/facet/string.rb +86 -1
- data/lib/facet/string/align_center.rb +87 -1
- data/lib/facet/string/align_left.rb +2 -1
- data/lib/facet/string/align_right.rb +2 -1
- data/lib/facet/string/at.rb +8 -1
- data/lib/facet/string/at_rand.rb +65 -1
- data/lib/facet/string/basename.rb +48 -1
- data/lib/facet/string/blank.rb +36 -1
- data/lib/facet/string/bracket.rb +70 -1
- data/lib/facet/string/brief.rb +33 -1
- data/lib/facet/string/bytes.rb +19 -1
- data/lib/facet/string/camelcase.rb +58 -1
- data/lib/facet/string/camelize.rb +35 -1
- data/lib/facet/string/capitalized.rb +38 -1
- data/lib/facet/string/chars.rb +34 -1
- data/lib/facet/string/cmp.rb +43 -1
- data/lib/facet/string/demodulize.rb +40 -1
- data/lib/facet/string/dequote.rb +29 -1
- data/lib/facet/string/downcase.rb +37 -1
- data/lib/facet/string/dresner.rb +49 -1
- data/lib/facet/string/each_char.rb +35 -1
- data/lib/facet/string/each_word.rb +50 -1
- data/lib/facet/string/ends_with.rb +2 -1
- data/lib/facet/string/first.rb +94 -1
- data/lib/facet/string/first_char.rb +20 -1
- data/lib/facet/string/fold.rb +67 -1
- data/lib/facet/string/format.rb +17 -1
- data/lib/facet/string/frequency.rb +39 -1
- data/lib/facet/string/humanize.rb +31 -1
- data/lib/facet/string/indent.rb +68 -1
- data/lib/facet/string/index_all.rb +40 -1
- data/lib/facet/string/last.rb +94 -1
- data/lib/facet/string/last_char.rb +22 -1
- data/lib/facet/string/line_wrap.rb +77 -1
- data/lib/facet/string/lines.rb +33 -1
- data/lib/facet/string/lowercase.rb +32 -1
- data/lib/facet/string/margin.rb +138 -1
- data/lib/facet/string/mscan.rb +42 -1
- data/lib/facet/string/natcmp.rb +108 -1
- data/lib/facet/string/nchar.rb +45 -1
- data/lib/facet/string/ordinal.rb +16 -1
- data/lib/facet/string/plural.rb +2 -1
- data/lib/facet/string/pop.rb +54 -1
- data/lib/facet/string/probability.rb +34 -1
- data/lib/facet/string/pull.rb +17 -1
- data/lib/facet/string/push.rb +44 -1
- data/lib/facet/string/quote.rb +68 -1
- data/lib/facet/string/rand_byte.rb +55 -1
- data/lib/facet/string/rand_index.rb +29 -1
- data/lib/facet/string/range.rb +37 -1
- data/lib/facet/string/range_all.rb +48 -1
- data/lib/facet/string/range_of_line.rb +42 -1
- data/lib/facet/string/regesc.rb +32 -0
- data/lib/facet/string/self/format.rb +17 -1
- data/lib/facet/string/self/interpolate.rb +31 -1
- data/lib/facet/string/self/patterns.rb +51 -1
- data/lib/facet/string/self/rand_letter.rb +34 -1
- data/lib/facet/string/self/random.rb +36 -1
- data/lib/facet/string/shatter.rb +45 -1
- data/lib/facet/string/shift.rb +42 -1
- data/lib/facet/string/shuffle.rb +42 -1
- data/lib/facet/string/similarity.rb +108 -1
- data/lib/facet/string/singular.rb +117 -1
- data/lib/facet/string/slap.rb +44 -1
- data/lib/facet/string/soundex.rb +102 -1
- data/lib/facet/string/starts_with.rb +24 -1
- data/lib/facet/string/succ.rb +38 -1
- data/lib/facet/string/tab.rb +2 -1
- data/lib/facet/string/tabto.rb +2 -1
- data/lib/facet/string/to_a.rb +35 -1
- data/lib/facet/string/to_arr.rb +55 -1
- data/lib/facet/string/to_b.rb +64 -1
- data/lib/facet/string/to_const.rb +39 -1
- data/lib/facet/string/to_date.rb +35 -1
- data/lib/facet/string/to_proc.rb +54 -1
- data/lib/facet/string/to_re.rb +46 -1
- data/lib/facet/string/to_rx.rb +2 -0
- data/lib/facet/string/to_time.rb +34 -1
- data/lib/facet/string/unbracket.rb +46 -1
- data/lib/facet/string/underscore.rb +18 -1
- data/lib/facet/string/unix_crypt.rb +41 -1
- data/lib/facet/string/unpack.rb +45 -1
- data/lib/facet/string/unshift.rb +42 -1
- data/lib/facet/string/upcase.rb +45 -1
- data/lib/facet/string/uppercase.rb +2 -1
- data/lib/facet/string/whitespace.rb +27 -1
- data/lib/facet/string/word_filter.rb +61 -1
- data/lib/facet/string/word_wrap.rb +90 -1
- data/lib/facet/string/words.rb +45 -1
- data/lib/facet/symbol.rb +13 -1
- data/lib/facet/symbol/camelcase.rb +42 -1
- data/lib/facet/symbol/camelize.rb +33 -1
- data/lib/facet/symbol/capitalize.rb +31 -1
- data/lib/facet/symbol/capitalized.rb +33 -1
- data/lib/facet/symbol/downcase.rb +36 -1
- data/lib/facet/symbol/not.rb +40 -1
- data/lib/facet/symbol/pad.rb +43 -1
- data/lib/facet/symbol/succ.rb +42 -1
- data/lib/facet/symbol/to_const.rb +40 -1
- data/lib/facet/symbol/to_proc.rb +45 -1
- data/lib/facet/symbol/to_str.rb +39 -1
- data/lib/facet/symbol/underscore.rb +32 -1
- data/lib/facet/symbol/upcase.rb +37 -1
- data/lib/facet/time.rb +7 -1
- data/lib/facet/time/change.rb +51 -1
- data/lib/facet/time/elapse.rb +41 -1
- data/lib/facet/time/self/days_extrema.rb +22 -1
- data/lib/facet/time/stamp.rb +47 -1
- data/lib/facet/time/to_date.rb +37 -1
- data/lib/facet/time/to_s.rb +33 -1
- data/lib/facet/time/to_time.rb +36 -1
- data/lib/facet/unboundmethod.rb +1 -1
- data/lib/facet/unboundmethod/name.rb +8 -1
- data/lib/facets.rb +135 -154
- data/lib/facets/english/bytes.rb +212 -0
- data/lib/facets/english/multipliers.rb +192 -0
- data/lib/facets/english/ormsupport.rb +233 -0
- data/lib/facets/english/time.rb +327 -0
- data/lib/facets/group/inflect.rb +71 -0
- data/lib/facets/group/nilasemptiness.rb +34 -0
- data/lib/facets/group/random.rb +21 -0
- data/lib/facets/group/stringasarray.rb +16 -0
- data/lib/facets/method/README +1 -0
- data/lib/facets/support/functor.rb +49 -0
- data/test/lib/facet/array/test_at_rand.rb +34 -0
- data/test/lib/facet/array/test_delete_unless.rb +28 -0
- data/test/lib/facet/array/test_delete_values.rb +28 -0
- data/test/lib/facet/array/test_delete_values_at.rb +31 -0
- data/test/lib/facet/array/test_first.rb +46 -0
- data/test/lib/facet/array/test_head.rb +42 -0
- data/test/lib/facet/array/test_last_index.rb +26 -0
- data/test/lib/facet/array/test_merge.rb +35 -0
- data/test/lib/facet/array/test_mid.rb +33 -0
- data/test/lib/facet/array/test_middle.rb +29 -0
- data/test/lib/facet/array/test_op_fetch.rb +27 -0
- data/test/lib/facet/array/test_op_store.rb +30 -0
- data/test/lib/facet/array/test_pick.rb +40 -0
- data/test/lib/facet/array/test_pos.rb +28 -0
- data/test/lib/facet/array/test_pull.rb +28 -0
- data/test/lib/facet/array/test_rand_index.rb +29 -0
- data/test/lib/facet/array/test_rand_subset.rb +29 -0
- data/test/lib/facet/array/test_range.rb +32 -0
- data/test/lib/facet/array/test_rotate.rb +36 -0
- data/test/lib/facet/array/test_select.rb +28 -0
- data/test/lib/facet/array/test_shuffle.rb +35 -0
- data/test/lib/facet/array/test_slap.rb +28 -0
- data/test/lib/facet/array/test_thru.rb +27 -0
- data/test/lib/facet/array/test_to_b.rb +27 -0
- data/test/lib/facet/array/test_to_h.rb +33 -0
- data/test/lib/facet/array/test_to_hash.rb +27 -0
- data/test/lib/facet/binding/self/test_of_caller.rb +35 -0
- data/test/lib/facet/binding/test___LINE__.rb +43 -0
- data/test/lib/facet/binding/test_call_stack.rb +34 -0
- data/test/lib/facet/binding/test_called.rb +30 -0
- data/test/lib/facet/binding/test_caller.rb +35 -0
- data/test/lib/facet/binding/test_defined.rb +34 -0
- data/test/lib/facet/binding/test_eval.rb +34 -0
- data/test/lib/facet/binding/test_local_variables.rb +34 -0
- data/test/lib/facet/binding/test_method_name.rb +34 -0
- data/test/lib/facet/binding/test_op_fetch.rb +34 -0
- data/test/lib/facet/binding/test_op_store.rb +35 -0
- data/test/lib/facet/binding/test_self.rb +34 -0
- data/test/lib/facet/class/test_descendents.rb +30 -0
- data/test/lib/facet/class/test_remove_descendents.rb +32 -0
- data/test/lib/facet/comparable/test_at_least.rb +34 -0
- data/test/lib/facet/comparable/test_clip.rb +44 -0
- data/test/lib/facet/comparable/test_cmp.rb +28 -0
- data/test/lib/facet/continuation/self/test_create.rb +26 -0
- data/test/lib/facet/date/test_days_in_month.rb +30 -0
- data/test/lib/facet/date/test_days_of_month.rb +30 -0
- data/test/lib/facet/date/test_stamp.rb +38 -0
- data/test/lib/facet/date/test_to_date.rb +30 -0
- data/test/lib/facet/date/test_to_s.rb +30 -0
- data/test/lib/facet/date/test_to_time.rb +30 -0
- data/test/lib/facet/dir/self/test_ancestor.rb +26 -0
- data/test/lib/facet/dir/self/test_ascend.rb +41 -0
- data/test/lib/facet/dir/self/test_ls_r.rb +52 -0
- data/test/lib/facet/enumerable/self/test_combinations.rb +43 -0
- data/test/lib/facet/enumerable/self/test_cross.rb +31 -0
- data/test/lib/facet/enumerable/test_collect_with_index.rb +27 -0
- data/test/lib/facet/enumerable/test_commonality.rb +31 -0
- data/test/lib/facet/enumerable/test_compact_collect.rb +27 -0
- data/test/lib/facet/enumerable/test_cross.rb +30 -0
- data/test/lib/facet/enumerable/test_each_combination.rb +29 -0
- data/test/lib/facet/enumerable/test_each_pair.rb +29 -0
- data/test/lib/facet/enumerable/test_each_slice.rb +74 -0
- data/test/lib/facet/enumerable/test_each_unique_pair.rb +29 -0
- data/test/lib/facet/enumerable/test_entropy.rb +26 -0
- data/test/lib/facet/enumerable/test_every.rb +35 -0
- data/test/lib/facet/enumerable/test_ew.rb +31 -0
- data/test/lib/facet/enumerable/test_filter_collect.rb +31 -0
- data/test/lib/facet/enumerable/test_find_collisions.rb +30 -0
- data/test/lib/facet/enumerable/test_frequency.rb +27 -0
- data/test/lib/facet/enumerable/test_graph.rb +30 -0
- data/test/lib/facet/enumerable/test_ideal_entropy.rb +27 -0
- data/test/lib/facet/enumerable/test_none.rb +33 -0
- data/test/lib/facet/enumerable/test_occur.rb +30 -0
- data/test/lib/facet/enumerable/test_one.rb +35 -0
- data/test/lib/facet/enumerable/test_op_pow.rb +27 -0
- data/test/lib/facet/enumerable/test_partition_by.rb +31 -0
- data/test/lib/facet/enumerable/test_permute.rb +29 -0
- data/test/lib/facet/enumerable/test_probability.rb +27 -0
- data/test/lib/facet/enumerable/test_to_h.rb +27 -0
- data/test/lib/facet/enumerable/test_uniq_by.rb +28 -0
- data/test/lib/facet/file/self/test_create.rb +39 -0
- data/test/lib/facet/file/self/test_open_as_string.rb +40 -0
- data/test/lib/facet/file/self/test_read_list.rb +37 -0
- data/test/lib/facet/file/self/test_sanitize.rb +46 -0
- data/test/lib/facet/file/self/test_split_all.rb +27 -0
- data/test/lib/facet/fileutils/test_slice.rb +96 -0
- data/test/lib/facet/fileutils/test_wc.rb +68 -0
- data/test/lib/facet/fileutils/test_which.rb +61 -0
- data/test/lib/facet/float/test_approx.rb +28 -0
- data/test/lib/facet/float/test_round_at.rb +46 -0
- data/test/lib/facet/float/test_round_to.rb +46 -0
- data/test/lib/facet/hash/self/test_zipnew.rb +28 -0
- data/test/lib/facet/hash/test_alias.rb +31 -0
- data/test/lib/facet/hash/test_assert_has_keys.rb +27 -0
- data/test/lib/facet/hash/test_assert_has_only_keys.rb +27 -0
- data/test/lib/facet/hash/test_at.rb +28 -0
- data/test/lib/facet/hash/test_collate.rb +35 -0
- data/test/lib/facet/hash/test_each.rb +36 -0
- data/test/lib/facet/hash/test_each_with_index.rb +29 -0
- data/test/lib/facet/hash/test_each_with_key.rb +29 -0
- data/test/lib/facet/hash/test_graph.rb +28 -0
- data/test/lib/facet/hash/test_has_keys.rb +27 -0
- data/test/lib/facet/hash/test_has_only_keys.rb +27 -0
- data/test/lib/facet/hash/test_inverse.rb +28 -0
- data/test/lib/facet/hash/test_keys_to_s.rb +34 -0
- data/test/lib/facet/hash/test_keys_to_sym.rb +34 -0
- data/test/lib/facet/hash/test_op_fetch.rb +111 -0
- data/test/lib/facet/hash/test_op_lshift.rb +29 -0
- data/test/lib/facet/hash/test_rand_key.rb +27 -0
- data/test/lib/facet/hash/test_rand_pair.rb +27 -0
- data/test/lib/facet/hash/test_rand_value.rb +27 -0
- data/test/lib/facet/hash/test_replace_each.rb +29 -0
- data/test/lib/facet/hash/test_shuffle.rb +32 -0
- data/test/lib/facet/hash/test_slice.rb +27 -0
- data/test/lib/facet/hash/test_swap.rb +27 -0
- data/test/lib/facet/hash/test_swapkey.rb +29 -0
- data/test/lib/facet/hash/test_to_h.rb +27 -0
- data/test/lib/facet/hash/test_to_ostruct.rb +30 -0
- data/test/lib/facet/hash/test_to_ostruct_recurse.rb +30 -0
- data/test/lib/facet/hash/test_traverse.rb +37 -0
- data/test/lib/facet/hash/test_update_each.rb +29 -0
- data/test/lib/facet/hash/test_update_keys.rb +28 -0
- data/test/lib/facet/hash/test_update_values.rb +28 -0
- data/test/lib/facet/hash/test_weave.rb +29 -0
- data/test/lib/facet/integer/test_factorial.rb +30 -0
- data/test/lib/facet/integer/test_multiple.rb +43 -0
- data/test/lib/facet/integer/test_ordinal.rb +29 -0
- data/test/lib/facet/integer/test_times_collect.rb +28 -0
- data/test/lib/facet/kernel/test___class__.rb +26 -0
- data/test/lib/facet/kernel/test_as.rb +42 -0
- data/test/lib/facet/kernel/test_assign_from.rb +31 -0
- data/test/lib/facet/kernel/test_assign_with.rb +31 -0
- data/test/lib/facet/kernel/test_bool.rb +41 -0
- data/test/lib/facet/kernel/test_bug.rb +26 -0
- data/test/lib/facet/kernel/test_call_stack.rb +26 -0
- data/test/lib/facet/kernel/test_called.rb +26 -0
- data/test/lib/facet/kernel/test_constant.rb +33 -0
- data/test/lib/facet/kernel/test_copy.rb +40 -0
- data/test/lib/facet/kernel/test_deep_copy.rb +40 -0
- data/test/lib/facet/kernel/test_demo.rb +28 -0
- data/test/lib/facet/kernel/test_fn.rb +26 -0
- data/test/lib/facet/kernel/test_generate_method_name.rb +26 -0
- data/test/lib/facet/kernel/test_get_by_id.rb +28 -0
- data/test/lib/facet/kernel/test_here.rb +26 -0
- data/test/lib/facet/kernel/test_in.rb +27 -0
- data/test/lib/facet/kernel/test_maybe.rb +26 -0
- data/test/lib/facet/kernel/test_metaclass.rb +34 -0
- data/test/lib/facet/kernel/test_method.rb +32 -0
- data/test/lib/facet/kernel/test_method_name.rb +31 -0
- data/test/lib/facet/kernel/test_methods.rb +50 -0
- data/test/lib/facet/kernel/test_new.rb +30 -0
- data/test/lib/facet/kernel/test_object_class.rb +26 -0
- data/test/lib/facet/kernel/test_object_hexid.rb +27 -0
- data/test/lib/facet/kernel/test_require_all.rb +26 -0
- data/test/lib/facet/kernel/test_require_esc.rb +27 -0
- data/test/lib/facet/kernel/test_require_facet.rb +27 -0
- data/test/lib/facet/kernel/test_resc.rb +27 -0
- data/test/lib/facet/kernel/test_returning.rb +30 -0
- data/test/lib/facet/kernel/test_send_as.rb +26 -0
- data/test/lib/facet/kernel/test_set_from.rb +33 -0
- data/test/lib/facet/kernel/test_set_with.rb +33 -0
- data/test/lib/facet/kernel/test_silently.rb +28 -0
- data/test/lib/facet/kernel/test_singleton.rb +40 -0
- data/test/lib/facet/kernel/test_superior.rb +30 -0
- data/test/lib/facet/kernel/test_supermethod.rb +33 -0
- data/test/lib/facet/kernel/test_this.rb +26 -0
- data/test/lib/facet/kernel/test_to_b.rb +28 -0
- data/test/lib/facet/kernel/test_to_bool.rb +28 -0
- data/test/lib/facet/kernel/test_uri.rb +30 -0
- data/test/lib/facet/kernel/test_val.rb +43 -0
- data/test/lib/facet/kernel/test_with_accessor.rb +51 -0
- data/test/lib/facet/matchdata/test_match.rb +29 -0
- data/test/lib/facet/matchdata/test_matchtree.rb +32 -0
- data/test/lib/facet/module/test_abstract.rb +36 -0
- data/test/lib/facet/module/test_alias_module_function.rb +34 -0
- data/test/lib/facet/module/test_ancestor.rb +26 -0
- data/test/lib/facet/module/test_basename.rb +26 -0
- data/test/lib/facet/module/test_by_name.rb +29 -0
- data/test/lib/facet/module/test_cattr_accessor.rb +55 -0
- data/test/lib/facet/module/test_clone_using.rb +55 -0
- data/test/lib/facet/module/test_dirname.rb +26 -0
- data/test/lib/facet/module/test_equate_on.rb +37 -0
- data/test/lib/facet/module/test_generate_instance_method_name.rb +33 -0
- data/test/lib/facet/module/test_include_as.rb +35 -0
- data/test/lib/facet/module/test_initializer.rb +32 -0
- data/test/lib/facet/module/test_instance_methods.rb +59 -0
- data/test/lib/facet/module/test_integrate.rb +35 -0
- data/test/lib/facet/module/test_memoize.rb +50 -0
- data/test/lib/facet/module/test_modspace.rb +27 -0
- data/test/lib/facet/module/test_namespace.rb +33 -0
- data/test/lib/facet/module/test_nesting.rb +36 -0
- data/test/lib/facet/module/test_redef.rb +30 -0
- data/test/lib/facet/module/test_redefine_method.rb +30 -0
- data/test/lib/facet/module/test_redirect.rb +30 -0
- data/test/lib/facet/module/test_redirect_method.rb +30 -0
- data/test/lib/facet/module/test_remove.rb +30 -0
- data/test/lib/facet/module/test_rename.rb +31 -0
- data/test/lib/facet/module/test_rename_method.rb +31 -0
- data/test/lib/facet/module/test_revisal.rb +35 -0
- data/test/lib/facet/module/test_shadow_method.rb +30 -0
- data/test/lib/facet/module/test_sort_on.rb +42 -0
- data/test/lib/facet/module/test_undef.rb +30 -0
- data/test/lib/facet/module/test_wrap.rb +30 -0
- data/test/lib/facet/module/test_wrap_method.rb +30 -0
- data/test/lib/facet/nilclass/test_empty.rb +26 -0
- data/test/lib/facet/nilclass/test_include.rb +26 -0
- data/test/lib/facet/nilclass/test_op_fetch.rb +28 -0
- data/test/lib/facet/nilclass/test_size.rb +30 -0
- data/test/lib/facet/nilclass/test_to_f.rb +26 -0
- data/test/lib/facet/nilclass/test_to_h.rb +26 -0
- data/test/lib/facet/numeric/test_ceil_multiple.rb +31 -0
- data/test/lib/facet/numeric/test_succ.rb +40 -0
- data/test/lib/facet/numeric/test_to_b.rb +27 -0
- data/test/lib/facet/ostruct/test___merge__.rb +38 -0
- data/test/lib/facet/ostruct/test___update__.rb +29 -0
- data/test/lib/facet/ostruct/test_op_fetch.rb +27 -0
- data/test/lib/facet/ostruct/test_op_store.rb +28 -0
- data/test/lib/facet/proc/test_compose.rb +36 -0
- data/test/lib/facet/proc/test_to_method.rb +31 -0
- data/test/lib/facet/range/test_to_r.rb +27 -0
- data/test/lib/facet/range/test_to_range.rb +27 -0
- data/test/lib/facet/range/test_umbrella.rb +34 -0
- data/test/lib/facet/range/test_within.rb +29 -0
- data/test/lib/facet/regexp/test_arity.rb +33 -0
- data/test/lib/facet/regexp/test_to_re.rb +27 -0
- data/test/lib/facet/regexp/test_to_regexp.rb +27 -0
- data/test/lib/facet/string/self/test_interpolate.rb +27 -0
- data/test/lib/facet/string/self/test_patterns.rb +28 -0
- data/test/lib/facet/string/self/test_rand_letter.rb +26 -0
- data/test/lib/facet/string/test_align_center.rb +34 -0
- data/test/lib/facet/string/test_at_rand.rb +35 -0
- data/test/lib/facet/string/test_basename.rb +41 -0
- data/test/lib/facet/string/test_blank.rb +27 -0
- data/test/lib/facet/string/test_bracket.rb +49 -0
- data/test/lib/facet/string/test_camelcase.rb +39 -0
- data/test/lib/facet/string/test_camelize.rb +26 -0
- data/test/lib/facet/string/test_capitalized.rb +26 -0
- data/test/lib/facet/string/test_chars.rb +27 -0
- data/test/lib/facet/string/test_cmp.rb +30 -0
- data/test/lib/facet/string/test_demodulize.rb +38 -0
- data/test/lib/facet/string/test_downcase.rb +26 -0
- data/test/lib/facet/string/test_dresner.rb +32 -0
- data/test/lib/facet/string/test_each_char.rb +29 -0
- data/test/lib/facet/string/test_each_word.rb +29 -0
- data/test/lib/facet/string/test_first.rb +43 -0
- data/test/lib/facet/string/test_fold.rb +34 -0
- data/test/lib/facet/string/test_frequency.rb +28 -0
- data/test/lib/facet/string/test_humanize.rb +26 -0
- data/test/lib/facet/string/test_indent.rb +40 -0
- data/test/lib/facet/string/test_index_all.rb +26 -0
- data/test/lib/facet/string/test_last.rb +46 -0
- data/test/lib/facet/string/test_line_wrap.rb +27 -0
- data/test/lib/facet/string/test_lines.rb +26 -0
- data/test/lib/facet/string/test_lowercase.rb +26 -0
- data/test/lib/facet/string/test_margin.rb +117 -0
- data/test/lib/facet/string/test_mscan.rb +30 -0
- data/test/lib/facet/string/test_natcmp.rb +30 -0
- data/test/lib/facet/string/test_nchar.rb +29 -0
- data/test/lib/facet/string/test_pop.rb +47 -0
- data/test/lib/facet/string/test_probability.rb +28 -0
- data/test/lib/facet/string/test_push.rb +40 -0
- data/test/lib/facet/string/test_quote.rb +49 -0
- data/test/lib/facet/string/test_rand_byte.rb +35 -0
- data/test/lib/facet/string/test_rand_index.rb +26 -0
- data/test/lib/facet/string/test_range.rb +27 -0
- data/test/lib/facet/string/test_range_all.rb +27 -0
- data/test/lib/facet/string/test_range_of_line.rb +28 -0
- data/test/lib/facet/string/test_regesc.rb +28 -0
- data/test/lib/facet/string/test_shatter.rb +29 -0
- data/test/lib/facet/string/test_shift.rb +40 -0
- data/test/lib/facet/string/test_shuffle.rb +27 -0
- data/test/lib/facet/string/test_similarity.rb +26 -0
- data/test/lib/facet/string/test_singular.rb +32 -0
- data/test/lib/facet/string/test_slap.rb +40 -0
- data/test/lib/facet/string/test_soundex.rb +41 -0
- data/test/lib/facet/string/test_succ.rb +29 -0
- data/test/lib/facet/string/test_to_a.rb +27 -0
- data/test/lib/facet/string/test_to_arr.rb +26 -0
- data/test/lib/facet/string/test_to_b.rb +41 -0
- data/test/lib/facet/string/test_to_const.rb +28 -0
- data/test/lib/facet/string/test_to_date.rb +30 -0
- data/test/lib/facet/string/test_to_proc.rb +33 -0
- data/test/lib/facet/string/test_to_re.rb +28 -0
- data/test/lib/facet/string/test_to_time.rb +30 -0
- data/test/lib/facet/string/test_unix_crypt.rb +30 -0
- data/test/lib/facet/string/test_unpack.rb +34 -0
- data/test/lib/facet/string/test_unshift.rb +39 -0
- data/test/lib/facet/string/test_upcase.rb +30 -0
- data/test/lib/facet/string/test_whitespace.rb +27 -0
- data/test/lib/facet/string/test_word_filter.rb +34 -0
- data/test/lib/facet/string/test_word_wrap.rb +51 -0
- data/test/lib/facet/string/test_words.rb +37 -0
- data/test/lib/facet/symbol/test_camelcase.rb +26 -0
- data/test/lib/facet/symbol/test_camelize.rb +27 -0
- data/test/lib/facet/symbol/test_capitalize.rb +26 -0
- data/test/lib/facet/symbol/test_capitalized.rb +27 -0
- data/test/lib/facet/symbol/test_downcase.rb +27 -0
- data/test/lib/facet/symbol/test_not.rb +29 -0
- data/test/lib/facet/symbol/test_pad.rb +27 -0
- data/test/lib/facet/symbol/test_succ.rb +28 -0
- data/test/lib/facet/symbol/test_to_const.rb +28 -0
- data/test/lib/facet/symbol/test_to_proc.rb +27 -0
- data/test/lib/facet/symbol/test_to_str.rb +28 -0
- data/test/lib/facet/symbol/test_underscore.rb +26 -0
- data/test/lib/facet/symbol/test_upcase.rb +27 -0
- data/test/lib/facet/time/test_change.rb +33 -0
- data/test/lib/facet/time/test_elapse.rb +27 -0
- data/test/lib/facet/time/test_stamp.rb +31 -0
- data/test/lib/facet/time/test_to_date.rb +31 -0
- data/test/lib/facet/time/test_to_s.rb +31 -0
- data/test/lib/facet/time/test_to_time.rb +31 -0
- data/test/lib/facets/english/test_bytes.rb +84 -0
- data/test/lib/facets/english/test_multipliers.rb +114 -0
- data/test/lib/facets/english/test_time.rb +73 -0
- metadata +895 -1625
- data/ANN +0 -59
- data/LICENSE/COPYING-GPL +0 -341
- data/LICENSE/LICENSE-ART +0 -50
- data/LICENSE/LICENSE-LGPL +0 -175
- data/LICENSE/LICENSE-MIT +0 -8
- data/LICENSE/LICENSE-RUBY +0 -60
- data/bench/b_calls.rb +0 -74
- data/bench/b_harray.rb +0 -49
- data/bench/b_pathname.rb +0 -24
- data/bench/b_range.rb +0 -64
- data/bench/return-bench.rb +0 -56
- data/bin/uri +0 -6
- data/conf/facets/extra +0 -7
- data/data/facets/units/binary/base.yaml +0 -12
- data/data/facets/units/binary/extra.yaml +0 -8
- data/data/facets/units/cex.yaml +0 -7
- data/data/facets/units/currency/base.yaml +0 -268
- data/data/facets/units/default.yaml +0 -22
- data/data/facets/units/dump_yaml.rb +0 -309
- data/data/facets/units/si/base.yaml +0 -36
- data/data/facets/units/si/derived.yaml +0 -133
- data/data/facets/units/si/extra.yaml +0 -107
- data/data/facets/units/standard.yaml +0 -5
- data/data/facets/units/uk.yaml +0 -16
- data/data/facets/units/uk/base.yaml +0 -107
- data/data/facets/units/us.yaml +0 -16
- data/data/facets/units/us/base.yaml +0 -112
- data/data/facets/units/xmethods/cached.yaml +0 -83
- data/data/facets/units/xmethods/mapping.yaml +0 -85
- data/demo/ann-demo.rb +0 -22
- data/lib/facet/all.rb +0 -1
- data/lib/facet/annotation.rb +0 -1
- data/lib/facet/ansicolor.rb +0 -1
- data/lib/facet/association.rb +0 -1
- data/lib/facet/base.rb +0 -1
- data/lib/facet/basicobject.rb +0 -1
- data/lib/facet/bbcode.rb +0 -1
- data/lib/facet/binary_multiplier.rb +0 -1
- data/lib/facet/binaryreader.rb +0 -1
- data/lib/facet/blankslate.rb +0 -1
- data/lib/facet/byteorder.rb +0 -1
- data/lib/facet/class_inherit.rb +0 -1
- data/lib/facet/classmethods.rb +0 -1
- data/lib/facet/cloneable.rb +0 -1
- data/lib/facet/constants.rb +0 -1
- data/lib/facet/coroutine.rb +0 -1
- data/lib/facet/crosscase.rb +0 -1
- data/lib/facet/crypt.rb +0 -1
- data/lib/facet/dictionary.rb +0 -1
- data/lib/facet/downloader.rb +0 -1
- data/lib/facet/dynamod.rb +0 -1
- data/lib/facet/enumerable_args.rb +0 -1
- data/lib/facet/enumtype.rb +0 -1
- data/lib/facet/expirable.rb +0 -1
- data/lib/facet/filelist.rb +0 -1
- data/lib/facet/fixnum_const.rb +0 -1
- data/lib/facet/floatstring.rb +0 -1
- data/lib/facet/functor.rb +0 -1
- data/lib/facet/harray.rb +0 -1
- data/lib/facet/heap.rb +0 -1
- data/lib/facet/infinity.rb +0 -1
- data/lib/facet/inflect.rb +0 -1
- data/lib/facet/inheritor.rb +0 -1
- data/lib/facet/interval.rb +0 -1
- data/lib/facet/ioreactor.rb +0 -1
- data/lib/facet/ioredirect.rb +0 -1
- data/lib/facet/lisp.rb +0 -1
- data/lib/facet/lru_cache.rb +0 -1
- data/lib/facet/methodprobe.rb +0 -1
- data/lib/facet/mock.rb +0 -1
- data/lib/facet/multiplier.rb +0 -1
- data/lib/facet/multiton.rb +0 -1
- data/lib/facet/nack.rb +0 -1
- data/lib/facet/nil_as_emptiness.rb +0 -1
- data/lib/facet/nilcomparable.rb +0 -1
- data/lib/facet/notcopyable.rb +0 -1
- data/lib/facet/null.rb +0 -1
- data/lib/facet/ohash.rb +0 -1
- data/lib/facet/one.rb +0 -1
- data/lib/facet/openobject.rb +0 -1
- data/lib/facet/orm_support.rb +0 -1
- data/lib/facet/ostructable.rb +0 -1
- data/lib/facet/package.rb +0 -1
- data/lib/facet/pool.rb +0 -1
- data/lib/facet/preinitialize.rb +0 -1
- data/lib/facet/progressbar.rb +0 -1
- data/lib/facet/promoteself.rb +0 -1
- data/lib/facet/proxy.rb +0 -1
- data/lib/facet/quicktest.rb +0 -1
- data/lib/facet/random.rb +0 -1
- data/lib/facet/reference.rb +0 -1
- data/lib/facet/semaphore.rb +0 -1
- data/lib/facet/shellcommand.rb +0 -1
- data/lib/facet/snapshot.rb +0 -1
- data/lib/facet/stateparser.rb +0 -1
- data/lib/facet/statichash.rb +0 -1
- data/lib/facet/string_as_array.rb +0 -1
- data/lib/facet/superstruct.rb +0 -1
- data/lib/facet/syncarray.rb +0 -1
- data/lib/facet/synchash.rb +0 -1
- data/lib/facet/tagiter.rb +0 -1
- data/lib/facet/template.rb +0 -1
- data/lib/facet/test.rb +0 -1
- data/lib/facet/time_in_english.rb +0 -1
- data/lib/facet/timer.rb +0 -1
- data/lib/facet/tracepoint.rb +0 -1
- data/lib/facet/tuple.rb +0 -1
- data/lib/facet/uninheritable.rb +0 -1
- data/lib/facet/units.rb +0 -1
- data/lib/facet/version.rb +0 -1
- data/lib/facet/yamlstruct.rb +0 -1
- data/lib/mega/annotation.rb +0 -568
- data/lib/mega/ansicolor.rb +0 -193
- data/lib/mega/association.rb +0 -174
- data/lib/mega/basicobject.rb +0 -108
- data/lib/mega/bbcode.rb +0 -410
- data/lib/mega/binary_multiplier.rb +0 -250
- data/lib/mega/binaryreader.rb +0 -210
- data/lib/mega/blankslate.rb +0 -3
- data/lib/mega/byteorder.rb +0 -119
- data/lib/mega/class_inherit.rb +0 -208
- data/lib/mega/classmethods.rb +0 -111
- data/lib/mega/cloneable.rb +0 -52
- data/lib/mega/constants.rb +0 -308
- data/lib/mega/coroutine.rb +0 -173
- data/lib/mega/crosscase.rb +0 -347
- data/lib/mega/crypt.rb +0 -167
- data/lib/mega/dictionary.rb +0 -340
- data/lib/mega/downloader.rb +0 -240
- data/lib/mega/dynamod.rb +0 -249
- data/lib/mega/enumerable_args.rb +0 -218
- data/lib/mega/enumtype.rb +0 -105
- data/lib/mega/expirable.rb +0 -88
- data/lib/mega/filelist.rb +0 -478
- data/lib/mega/fixnum_const.rb +0 -62
- data/lib/mega/floatstring.rb +0 -179
- data/lib/mega/functor.rb +0 -98
- data/lib/mega/harray.rb +0 -817
- data/lib/mega/heap.rb +0 -226
- data/lib/mega/infinity.rb +0 -123
- data/lib/mega/inheritor.rb +0 -236
- data/lib/mega/interval.rb +0 -426
- data/lib/mega/ioreactor.rb +0 -671
- data/lib/mega/ioredirect.rb +0 -130
- data/lib/mega/lisp.rb +0 -387
- data/lib/mega/lru_cache.rb +0 -184
- data/lib/mega/mock.rb +0 -224
- data/lib/mega/multiplier.rb +0 -180
- data/lib/mega/multiton.rb +0 -360
- data/lib/mega/nack.rb +0 -162
- data/lib/mega/nilcomparable.rb +0 -128
- data/lib/mega/notcopyable.rb +0 -146
- data/lib/mega/null.rb +0 -40
- data/lib/mega/ohash.rb +0 -3
- data/lib/mega/one.rb +0 -72
- data/lib/mega/openobject.rb +0 -220
- data/lib/mega/orm_support.rb +0 -233
- data/lib/mega/ostructable.rb +0 -212
- data/lib/mega/package.rb +0 -58
- data/lib/mega/pool.rb +0 -98
- data/lib/mega/preinitialize.rb +0 -152
- data/lib/mega/progressbar.rb +0 -214
- data/lib/mega/promoteself.rb +0 -104
- data/lib/mega/proxy.rb +0 -13
- data/lib/mega/reference.rb +0 -83
- data/lib/mega/semaphore.rb +0 -106
- data/lib/mega/shellcommand.rb +0 -55
- data/lib/mega/snapshot.rb +0 -190
- data/lib/mega/stateparser.rb +0 -576
- data/lib/mega/statichash.rb +0 -86
- data/lib/mega/superstruct.rb +0 -744
- data/lib/mega/syncarray.rb +0 -118
- data/lib/mega/synchash.rb +0 -173
- data/lib/mega/tagiter.rb +0 -389
- data/lib/mega/template.rb +0 -211
- data/lib/mega/time_in_english.rb +0 -347
- data/lib/mega/timer.rb +0 -293
- data/lib/mega/tracepoint.rb +0 -184
- data/lib/mega/tuple.rb +0 -97
- data/lib/mega/uninheritable.rb +0 -92
- data/lib/mega/units.rb +0 -926
- data/lib/mega/version.rb +0 -245
- data/lib/mega/yamlstruct.rb +0 -16
- data/lib/nano/all.rb +0 -18
- data/lib/nano/array.rb +0 -33
- data/lib/nano/array/at_rand.rb +0 -52
- data/lib/nano/array/body.rb +0 -35
- data/lib/nano/array/delete_unless.rb +0 -35
- data/lib/nano/array/delete_values.rb +0 -38
- data/lib/nano/array/delete_values_at.rb +0 -57
- data/lib/nano/array/each_with_key.rb +0 -9
- data/lib/nano/array/first.rb +0 -53
- data/lib/nano/array/foot.rb +0 -36
- data/lib/nano/array/head.rb +0 -36
- data/lib/nano/array/last.rb +0 -53
- data/lib/nano/array/last_index.rb +0 -35
- data/lib/nano/array/merge.rb +0 -40
- data/lib/nano/array/mid.rb +0 -50
- data/lib/nano/array/middle.rb +0 -45
- data/lib/nano/array/op_fetch.rb +0 -40
- data/lib/nano/array/op_store.rb +0 -47
- data/lib/nano/array/pick.rb +0 -68
- data/lib/nano/array/pos.rb +0 -39
- data/lib/nano/array/pull.rb +0 -37
- data/lib/nano/array/rand_index.rb +0 -30
- data/lib/nano/array/rand_subset.rb +0 -56
- data/lib/nano/array/range.rb +0 -47
- data/lib/nano/array/rotate.rb +0 -67
- data/lib/nano/array/select.rb +0 -37
- data/lib/nano/array/shuffle.rb +0 -66
- data/lib/nano/array/slap.rb +0 -37
- data/lib/nano/array/store.rb +0 -7
- data/lib/nano/array/tail.rb +0 -34
- data/lib/nano/array/thru.rb +0 -38
- data/lib/nano/array/to_b.rb +0 -31
- data/lib/nano/array/to_h.rb +0 -57
- data/lib/nano/array/to_hash.rb +0 -46
- data/lib/nano/array/unzip.rb +0 -20
- data/lib/nano/base.rb +0 -73
- data/lib/nano/binding.rb +0 -14
- data/lib/nano/binding/__DIR__.rb +0 -2
- data/lib/nano/binding/__FILE__.rb +0 -2
- data/lib/nano/binding/__LINE__.rb +0 -58
- data/lib/nano/binding/call_stack.rb +0 -41
- data/lib/nano/binding/called.rb +0 -41
- data/lib/nano/binding/caller.rb +0 -41
- data/lib/nano/binding/defined.rb +0 -40
- data/lib/nano/binding/eval.rb +0 -41
- data/lib/nano/binding/local_variables.rb +0 -44
- data/lib/nano/binding/method_name.rb +0 -47
- data/lib/nano/binding/op_fetch.rb +0 -45
- data/lib/nano/binding/op_store.rb +0 -46
- data/lib/nano/binding/self.rb +0 -41
- data/lib/nano/binding/self/of_caller.rb +0 -122
- data/lib/nano/class.rb +0 -5
- data/lib/nano/class/by_name.rb +0 -1
- data/lib/nano/class/descendents.rb +0 -44
- data/lib/nano/class/remove_descendents.rb +0 -46
- data/lib/nano/class/remove_subclasses.rb +0 -2
- data/lib/nano/class/subclasses.rb +0 -2
- data/lib/nano/comparable.rb +0 -5
- data/lib/nano/comparable/at_least.rb +0 -53
- data/lib/nano/comparable/at_most.rb +0 -2
- data/lib/nano/comparable/cap.rb +0 -2
- data/lib/nano/comparable/clip.rb +0 -72
- data/lib/nano/comparable/cmp.rb +0 -38
- data/lib/nano/continuation.rb +0 -1
- data/lib/nano/continuation/self/create.rb +0 -71
- data/lib/nano/date.rb +0 -0
- data/lib/nano/date/days_in_month.rb +0 -42
- data/lib/nano/date/days_of_month.rb +0 -34
- data/lib/nano/date/stamp.rb +0 -52
- data/lib/nano/date/to_date.rb +0 -36
- data/lib/nano/date/to_s.rb +0 -33
- data/lib/nano/date/to_time.rb +0 -36
- data/lib/nano/dir.rb +0 -4
- data/lib/nano/dir/self/ancestor.rb +0 -33
- data/lib/nano/dir/self/ascend.rb +0 -56
- data/lib/nano/dir/self/ls_r.rb +0 -76
- data/lib/nano/dir/self/recurse.rb +0 -2
- data/lib/nano/enumerable.rb +0 -38
- data/lib/nano/enumerable/collect_with_counter.rb +0 -2
- data/lib/nano/enumerable/collect_with_index.rb +0 -51
- data/lib/nano/enumerable/commonality.rb +0 -63
- data/lib/nano/enumerable/compact_collect.rb +0 -50
- data/lib/nano/enumerable/compact_map.rb +0 -2
- data/lib/nano/enumerable/cross.rb +0 -44
- data/lib/nano/enumerable/each_by.rb +0 -2
- data/lib/nano/enumerable/each_combination.rb +0 -59
- data/lib/nano/enumerable/each_pair.rb +0 -50
- data/lib/nano/enumerable/each_permutation.rb +0 -42
- data/lib/nano/enumerable/each_slice.rb +0 -131
- data/lib/nano/enumerable/each_unique_pair.rb +0 -66
- data/lib/nano/enumerable/each_with_counter.rb +0 -8
- data/lib/nano/enumerable/elementwise.rb +0 -2
- data/lib/nano/enumerable/entropy.rb +0 -52
- data/lib/nano/enumerable/every.rb +0 -61
- data/lib/nano/enumerable/ew.rb +0 -59
- data/lib/nano/enumerable/filter_collect.rb +0 -58
- data/lib/nano/enumerable/filter_map.rb +0 -2
- data/lib/nano/enumerable/find_collisions.rb +0 -41
- data/lib/nano/enumerable/frequency.rb +0 -39
- data/lib/nano/enumerable/graph.rb +0 -59
- data/lib/nano/enumerable/ideal_entropy.rb +0 -49
- data/lib/nano/enumerable/map_with_counter.rb +0 -2
- data/lib/nano/enumerable/map_with_index.rb +0 -2
- data/lib/nano/enumerable/none.rb +0 -56
- data/lib/nano/enumerable/nonuniq.rb +0 -39
- data/lib/nano/enumerable/occur.rb +0 -62
- data/lib/nano/enumerable/one.rb +0 -65
- data/lib/nano/enumerable/op_pow.rb +0 -38
- data/lib/nano/enumerable/partition_by.rb +0 -55
- data/lib/nano/enumerable/probability.rb +0 -59
- data/lib/nano/enumerable/project.rb +0 -11
- data/lib/nano/enumerable/self/combinations.rb +0 -68
- data/lib/nano/enumerable/self/cross.rb +0 -79
- data/lib/nano/enumerable/to_h.rb +0 -50
- data/lib/nano/enumerable/uniq_by.rb +0 -39
- data/lib/nano/enumerable/where.rb +0 -12
- data/lib/nano/file.rb +0 -5
- data/lib/nano/file/self/create.rb +0 -52
- data/lib/nano/file/self/open_as_string.rb +0 -81
- data/lib/nano/file/self/read_list.rb +0 -47
- data/lib/nano/file/self/sanitize.rb +0 -50
- data/lib/nano/file/self/split_all.rb +0 -36
- data/lib/nano/fileutils.rb +0 -0
- data/lib/nano/fileutils/head.rb +0 -2
- data/lib/nano/fileutils/safe_ln.rb +0 -38
- data/lib/nano/fileutils/slice.rb +0 -148
- data/lib/nano/fileutils/split_all.rb +0 -29
- data/lib/nano/fileutils/tail.rb +0 -2
- data/lib/nano/fileutils/wc.rb +0 -128
- data/lib/nano/fileutils/whereis.rb +0 -76
- data/lib/nano/fileutils/which.rb +0 -117
- data/lib/nano/float.rb +0 -3
- data/lib/nano/float/approx.rb +0 -42
- data/lib/nano/float/round_at.rb +0 -72
- data/lib/nano/float/round_to.rb +0 -73
- data/lib/nano/hash.rb +0 -40
- data/lib/nano/hash/alias.rb +0 -54
- data/lib/nano/hash/assert_has_keys.rb +0 -38
- data/lib/nano/hash/assert_has_only_keys.rb +0 -38
- data/lib/nano/hash/at.rb +0 -26
- data/lib/nano/hash/collate.rb +0 -53
- data/lib/nano/hash/delete_unless.rb +0 -15
- data/lib/nano/hash/each.rb +0 -61
- data/lib/nano/hash/each_with_index.rb +0 -35
- data/lib/nano/hash/each_with_key.rb +0 -32
- data/lib/nano/hash/graph.rb +0 -31
- data/lib/nano/hash/has_keys.rb +0 -37
- data/lib/nano/hash/has_only_keys.rb +0 -37
- data/lib/nano/hash/inverse.rb +0 -51
- data/lib/nano/hash/join.rb +0 -19
- data/lib/nano/hash/keys_to_iv.rb +0 -60
- data/lib/nano/hash/keys_to_s.rb +0 -80
- data/lib/nano/hash/keys_to_sym.rb +0 -91
- data/lib/nano/hash/op_fetch.rb +0 -146
- data/lib/nano/hash/op_lshift.rb +0 -28
- data/lib/nano/hash/op_store.rb +0 -2
- data/lib/nano/hash/rand_key.rb +0 -47
- data/lib/nano/hash/rand_pair.rb +0 -50
- data/lib/nano/hash/rand_value.rb +0 -60
- data/lib/nano/hash/replace_each.rb +0 -33
- data/lib/nano/hash/self/zipnew.rb +0 -37
- data/lib/nano/hash/shuffle.rb +0 -53
- data/lib/nano/hash/slice.rb +0 -33
- data/lib/nano/hash/stringify_keys.rb +0 -2
- data/lib/nano/hash/swap.rb +0 -36
- data/lib/nano/hash/swapkey.rb +0 -44
- data/lib/nano/hash/symoblize_keys.rb +0 -2
- data/lib/nano/hash/to_h.rb +0 -35
- data/lib/nano/hash/to_ostruct.rb +0 -40
- data/lib/nano/hash/to_ostruct_recurse.rb +0 -45
- data/lib/nano/hash/traverse.rb +0 -63
- data/lib/nano/hash/update_each.rb +0 -43
- data/lib/nano/hash/update_keys.rb +0 -31
- data/lib/nano/hash/update_values.rb +0 -32
- data/lib/nano/hash/variablize_keys.rb +0 -2
- data/lib/nano/hash/weave.rb +0 -88
- data/lib/nano/inflect.rb +0 -36
- data/lib/nano/integer.rb +0 -8
- data/lib/nano/integer/even.rb +0 -2
- data/lib/nano/integer/fact.rb +0 -2
- data/lib/nano/integer/factorial.rb +0 -47
- data/lib/nano/integer/multiple.rb +0 -69
- data/lib/nano/integer/odd.rb +0 -2
- data/lib/nano/integer/ordinal.rb +0 -41
- data/lib/nano/integer/times_collect.rb +0 -37
- data/lib/nano/integer/times_map.rb +0 -28
- data/lib/nano/kernel.rb +0 -65
- data/lib/nano/kernel/__class__.rb +0 -31
- data/lib/nano/kernel/__meta__.rb +0 -57
- data/lib/nano/kernel/as.rb +0 -87
- data/lib/nano/kernel/assign_from.rb +0 -82
- data/lib/nano/kernel/assign_with.rb +0 -75
- data/lib/nano/kernel/autoreload.rb +0 -46
- data/lib/nano/kernel/autoreload_glob.rb +0 -36
- data/lib/nano/kernel/bool.rb +0 -77
- data/lib/nano/kernel/bug.rb +0 -39
- data/lib/nano/kernel/call_stack.rb +0 -59
- data/lib/nano/kernel/called.rb +0 -40
- data/lib/nano/kernel/complete.rb +0 -6
- data/lib/nano/kernel/constant.rb +0 -52
- data/lib/nano/kernel/copy.rb +0 -48
- data/lib/nano/kernel/deep_copy.rb +0 -49
- data/lib/nano/kernel/demo.rb +0 -46
- data/lib/nano/kernel/eigenclass.rb +0 -17
- data/lib/nano/kernel/false.rb +0 -2
- data/lib/nano/kernel/fn.rb +0 -33
- data/lib/nano/kernel/generate_method_name.rb +0 -39
- data/lib/nano/kernel/get_by_id.rb +0 -33
- data/lib/nano/kernel/here.rb +0 -34
- data/lib/nano/kernel/in.rb +0 -35
- data/lib/nano/kernel/instance_assign.rb +0 -25
- data/lib/nano/kernel/instvar.rb +0 -13
- data/lib/nano/kernel/is.rb +0 -5
- data/lib/nano/kernel/maybe.rb +0 -41
- data/lib/nano/kernel/me.rb +0 -17
- data/lib/nano/kernel/meta.rb +0 -2
- data/lib/nano/kernel/metaclass.rb +0 -42
- data/lib/nano/kernel/method.rb +0 -76
- data/lib/nano/kernel/method_name.rb +0 -49
- data/lib/nano/kernel/methods.rb +0 -79
- data/lib/nano/kernel/nack.rb +0 -12
- data/lib/nano/kernel/new.rb +0 -40
- data/lib/nano/kernel/object_class.rb +0 -31
- data/lib/nano/kernel/object_hexid.rb +0 -35
- data/lib/nano/kernel/op_esc.rb +0 -37
- data/lib/nano/kernel/own.rb +0 -17
- data/lib/nano/kernel/p.rb +0 -12
- data/lib/nano/kernel/require_all.rb +0 -44
- data/lib/nano/kernel/require_esc.rb +0 -42
- data/lib/nano/kernel/require_facet.rb +0 -41
- data/lib/nano/kernel/require_local.rb +0 -25
- data/lib/nano/kernel/resc.rb +0 -32
- data/lib/nano/kernel/returning.rb +0 -49
- data/lib/nano/kernel/send_as.rb +0 -34
- data/lib/nano/kernel/set_from.rb +0 -69
- data/lib/nano/kernel/set_with.rb +0 -74
- data/lib/nano/kernel/silence_warnings.rb +0 -2
- data/lib/nano/kernel/silently.rb +0 -41
- data/lib/nano/kernel/singleton.rb +0 -47
- data/lib/nano/kernel/superior.rb +0 -53
- data/lib/nano/kernel/supermethod.rb +0 -44
- data/lib/nano/kernel/this.rb +0 -33
- data/lib/nano/kernel/to_b.rb +0 -41
- data/lib/nano/kernel/to_bool.rb +0 -47
- data/lib/nano/kernel/true.rb +0 -2
- data/lib/nano/kernel/unuri.rb +0 -2
- data/lib/nano/kernel/uri.rb +0 -38
- data/lib/nano/kernel/val.rb +0 -52
- data/lib/nano/kernel/warn_with_line.rb +0 -30
- data/lib/nano/kernel/with_accessor.rb +0 -94
- data/lib/nano/kernel/with_reader.rb +0 -2
- data/lib/nano/kernel/with_writer.rb +0 -2
- data/lib/nano/logger.rb +0 -0
- data/lib/nano/logger/format.rb +0 -28
- data/lib/nano/logger/format_message.rb +0 -1
- data/lib/nano/matchdata.rb +0 -3
- data/lib/nano/matchdata/match.rb +0 -37
- data/lib/nano/matchdata/matchset.rb +0 -2
- data/lib/nano/matchdata/matchtree.rb +0 -62
- data/lib/nano/module.rb +0 -40
- data/lib/nano/module/abstract.rb +0 -50
- data/lib/nano/module/alias_module_function.rb +0 -57
- data/lib/nano/module/ancestor.rb +0 -38
- data/lib/nano/module/attr.rb +0 -23
- data/lib/nano/module/attr_setter.rb +0 -48
- data/lib/nano/module/attr_tester.rb +0 -56
- data/lib/nano/module/basename.rb +0 -39
- data/lib/nano/module/by_name.rb +0 -68
- data/lib/nano/module/cattr_accessor.rb +0 -141
- data/lib/nano/module/cattr_reader.rb +0 -2
- data/lib/nano/module/cattr_writer.rb +0 -2
- data/lib/nano/module/clone_removing.rb +0 -2
- data/lib/nano/module/clone_renaming.rb +0 -2
- data/lib/nano/module/clone_using.rb +0 -87
- data/lib/nano/module/dirname.rb +0 -42
- data/lib/nano/module/equate_on.rb +0 -70
- data/lib/nano/module/generate_instance_method_name.rb +0 -47
- data/lib/nano/module/include_as.rb +0 -102
- data/lib/nano/module/initializer.rb +0 -65
- data/lib/nano/module/instance_methods.rb +0 -186
- data/lib/nano/module/integrate.rb +0 -48
- data/lib/nano/module/is.rb +0 -34
- data/lib/nano/module/memoize.rb +0 -95
- data/lib/nano/module/modspace.rb +0 -43
- data/lib/nano/module/namespace.rb +0 -61
- data/lib/nano/module/nesting.rb +0 -45
- data/lib/nano/module/redef.rb +0 -31
- data/lib/nano/module/redefine_method.rb +0 -57
- data/lib/nano/module/redirect.rb +0 -30
- data/lib/nano/module/redirect_method.rb +0 -64
- data/lib/nano/module/remove.rb +0 -29
- data/lib/nano/module/rename.rb +0 -31
- data/lib/nano/module/rename_method.rb +0 -38
- data/lib/nano/module/revisal.rb +0 -49
- data/lib/nano/module/shadow_all.rb +0 -17
- data/lib/nano/module/shadow_method.rb +0 -42
- data/lib/nano/module/sort_on.rb +0 -73
- data/lib/nano/module/undef.rb +0 -29
- data/lib/nano/module/wrap.rb +0 -30
- data/lib/nano/module/wrap_method.rb +0 -48
- data/lib/nano/nil_as_emptiness.rb +0 -34
- data/lib/nano/nilclass.rb +0 -7
- data/lib/nano/nilclass/empty.rb +0 -32
- data/lib/nano/nilclass/include.rb +0 -32
- data/lib/nano/nilclass/length.rb +0 -2
- data/lib/nano/nilclass/op_fetch.rb +0 -37
- data/lib/nano/nilclass/size.rb +0 -44
- data/lib/nano/nilclass/to_f.rb +0 -32
- data/lib/nano/nilclass/to_h.rb +0 -33
- data/lib/nano/numeric.rb +0 -5
- data/lib/nano/numeric/ceil_multiple.rb +0 -40
- data/lib/nano/numeric/pred.rb +0 -2
- data/lib/nano/numeric/succ.rb +0 -69
- data/lib/nano/numeric/to_b.rb +0 -38
- data/lib/nano/ostruct.rb +0 -0
- data/lib/nano/ostruct/__merge__.rb +0 -52
- data/lib/nano/ostruct/__table__.rb +0 -17
- data/lib/nano/ostruct/__update__.rb +0 -45
- data/lib/nano/ostruct/op_fetch.rb +0 -40
- data/lib/nano/ostruct/op_store.rb +0 -42
- data/lib/nano/ostruct/to_h.rb +0 -8
- data/lib/nano/pathname.rb +0 -2
- data/lib/nano/pathname/ascend.rb +0 -22
- data/lib/nano/pathname/descend.rb +0 -20
- data/lib/nano/proc.rb +0 -3
- data/lib/nano/proc/compose.rb +0 -62
- data/lib/nano/proc/op_mul.rb +0 -2
- data/lib/nano/proc/to_method.rb +0 -74
- data/lib/nano/random.rb +0 -21
- data/lib/nano/range.rb +0 -4
- data/lib/nano/range/to_r.rb +0 -32
- data/lib/nano/range/to_range.rb +0 -36
- data/lib/nano/range/umbrella.rb +0 -67
- data/lib/nano/range/within.rb +0 -44
- data/lib/nano/regexp.rb +0 -3
- data/lib/nano/regexp/arity.rb +0 -41
- data/lib/nano/regexp/to_re.rb +0 -38
- data/lib/nano/regexp/to_regexp.rb +0 -36
- data/lib/nano/string.rb +0 -86
- data/lib/nano/string/align_center.rb +0 -87
- data/lib/nano/string/align_left.rb +0 -2
- data/lib/nano/string/align_right.rb +0 -2
- data/lib/nano/string/at.rb +0 -8
- data/lib/nano/string/at_rand.rb +0 -65
- data/lib/nano/string/basename.rb +0 -48
- data/lib/nano/string/blank.rb +0 -36
- data/lib/nano/string/bracket.rb +0 -70
- data/lib/nano/string/brief.rb +0 -33
- data/lib/nano/string/bytes.rb +0 -19
- data/lib/nano/string/camelcase.rb +0 -58
- data/lib/nano/string/camelize.rb +0 -35
- data/lib/nano/string/capitalized.rb +0 -38
- data/lib/nano/string/chars.rb +0 -34
- data/lib/nano/string/cmp.rb +0 -43
- data/lib/nano/string/demodulize.rb +0 -40
- data/lib/nano/string/dequote.rb +0 -29
- data/lib/nano/string/downcase.rb +0 -37
- data/lib/nano/string/dresner.rb +0 -49
- data/lib/nano/string/each_char.rb +0 -35
- data/lib/nano/string/each_word.rb +0 -50
- data/lib/nano/string/ends_with.rb +0 -2
- data/lib/nano/string/first.rb +0 -94
- data/lib/nano/string/first_char.rb +0 -20
- data/lib/nano/string/fold.rb +0 -67
- data/lib/nano/string/format.rb +0 -17
- data/lib/nano/string/frequency.rb +0 -39
- data/lib/nano/string/humanize.rb +0 -31
- data/lib/nano/string/indent.rb +0 -68
- data/lib/nano/string/index_all.rb +0 -40
- data/lib/nano/string/last.rb +0 -94
- data/lib/nano/string/last_char.rb +0 -22
- data/lib/nano/string/line_wrap.rb +0 -77
- data/lib/nano/string/lines.rb +0 -33
- data/lib/nano/string/lowercase.rb +0 -32
- data/lib/nano/string/margin.rb +0 -138
- data/lib/nano/string/mscan.rb +0 -42
- data/lib/nano/string/natcmp.rb +0 -108
- data/lib/nano/string/nchar.rb +0 -45
- data/lib/nano/string/ordinal.rb +0 -16
- data/lib/nano/string/plural.rb +0 -2
- data/lib/nano/string/pop.rb +0 -54
- data/lib/nano/string/probability.rb +0 -34
- data/lib/nano/string/pull.rb +0 -17
- data/lib/nano/string/push.rb +0 -44
- data/lib/nano/string/quote.rb +0 -68
- data/lib/nano/string/rand_byte.rb +0 -55
- data/lib/nano/string/rand_index.rb +0 -29
- data/lib/nano/string/range.rb +0 -37
- data/lib/nano/string/range_all.rb +0 -48
- data/lib/nano/string/range_of_line.rb +0 -42
- data/lib/nano/string/self/format.rb +0 -17
- data/lib/nano/string/self/interpolate.rb +0 -31
- data/lib/nano/string/self/patterns.rb +0 -51
- data/lib/nano/string/self/rand_letter.rb +0 -34
- data/lib/nano/string/self/random.rb +0 -36
- data/lib/nano/string/shatter.rb +0 -45
- data/lib/nano/string/shift.rb +0 -42
- data/lib/nano/string/shuffle.rb +0 -42
- data/lib/nano/string/similarity.rb +0 -105
- data/lib/nano/string/singular.rb +0 -117
- data/lib/nano/string/slap.rb +0 -44
- data/lib/nano/string/soundex.rb +0 -102
- data/lib/nano/string/starts_with.rb +0 -24
- data/lib/nano/string/succ.rb +0 -38
- data/lib/nano/string/tab.rb +0 -2
- data/lib/nano/string/tabto.rb +0 -2
- data/lib/nano/string/to_a.rb +0 -35
- data/lib/nano/string/to_arr.rb +0 -55
- data/lib/nano/string/to_b.rb +0 -64
- data/lib/nano/string/to_const.rb +0 -39
- data/lib/nano/string/to_date.rb +0 -35
- data/lib/nano/string/to_proc.rb +0 -54
- data/lib/nano/string/to_re.rb +0 -37
- data/lib/nano/string/to_time.rb +0 -34
- data/lib/nano/string/unbracket.rb +0 -46
- data/lib/nano/string/underscore.rb +0 -18
- data/lib/nano/string/unix_crypt.rb +0 -41
- data/lib/nano/string/unpack.rb +0 -45
- data/lib/nano/string/unshift.rb +0 -42
- data/lib/nano/string/upcase.rb +0 -45
- data/lib/nano/string/uppercase.rb +0 -2
- data/lib/nano/string/whitespace.rb +0 -27
- data/lib/nano/string/word_filter.rb +0 -61
- data/lib/nano/string/word_wrap.rb +0 -90
- data/lib/nano/string/words.rb +0 -35
- data/lib/nano/string_as_array.rb +0 -16
- data/lib/nano/symbol.rb +0 -13
- data/lib/nano/symbol/camelcase.rb +0 -42
- data/lib/nano/symbol/camelize.rb +0 -33
- data/lib/nano/symbol/capitalize.rb +0 -31
- data/lib/nano/symbol/capitalized.rb +0 -33
- data/lib/nano/symbol/downcase.rb +0 -36
- data/lib/nano/symbol/not.rb +0 -40
- data/lib/nano/symbol/pad.rb +0 -43
- data/lib/nano/symbol/succ.rb +0 -42
- data/lib/nano/symbol/to_const.rb +0 -40
- data/lib/nano/symbol/to_proc.rb +0 -45
- data/lib/nano/symbol/to_str.rb +0 -39
- data/lib/nano/symbol/underscore.rb +0 -32
- data/lib/nano/symbol/upcase.rb +0 -37
- data/lib/nano/time.rb +0 -7
- data/lib/nano/time/change.rb +0 -51
- data/lib/nano/time/elapse.rb +0 -41
- data/lib/nano/time/self/days_extrema.rb +0 -22
- data/lib/nano/time/stamp.rb +0 -47
- data/lib/nano/time/to_date.rb +0 -37
- data/lib/nano/time/to_s.rb +0 -33
- data/lib/nano/time/to_time.rb +0 -36
- data/lib/nano/unboundmethod.rb +0 -1
- data/lib/nano/unboundmethod/name.rb +0 -8
- data/lib/unit/methodprobe.rb +0 -215
- data/lib/unit/quicktest.rb +0 -36
- data/lib/unit/test.rb +0 -145
- data/test/lib/mega/test_annotation.rb +0 -217
- data/test/lib/mega/test_ansicolor.rb +0 -36
- data/test/lib/mega/test_bbcode.rb +0 -34
- data/test/lib/mega/test_binary_multiplier.rb +0 -84
- data/test/lib/mega/test_byteorder.rb +0 -56
- data/test/lib/mega/test_class_inherit.rb +0 -118
- data/test/lib/mega/test_classmethods.rb +0 -47
- data/test/lib/mega/test_constants.rb +0 -18
- data/test/lib/mega/test_coroutine.rb +0 -60
- data/test/lib/mega/test_crosscase.rb +0 -45
- data/test/lib/mega/test_dictionary.rb +0 -90
- data/test/lib/mega/test_dynamod.rb +0 -62
- data/test/lib/mega/test_enumerable_args.rb +0 -80
- data/test/lib/mega/test_enumtype.rb +0 -25
- data/test/lib/mega/test_expirable.rb +0 -25
- data/test/lib/mega/test_filelist.rb +0 -40
- data/test/lib/mega/test_fixnum_const.rb +0 -25
- data/test/lib/mega/test_floatstring.rb +0 -36
- data/test/lib/mega/test_functor.rb +0 -39
- data/test/lib/mega/test_harray.rb +0 -294
- data/test/lib/mega/test_heap.rb +0 -18
- data/test/lib/mega/test_infinity.rb +0 -36
- data/test/lib/mega/test_inheritor.rb +0 -155
- data/test/lib/mega/test_interval.rb +0 -119
- data/test/lib/mega/test_lisp.rb +0 -47
- data/test/lib/mega/test_lru_cache.rb +0 -25
- data/test/lib/mega/test_mock.rb +0 -36
- data/test/lib/mega/test_multiplier.rb +0 -114
- data/test/lib/mega/test_multiton.rb +0 -200
- data/test/lib/mega/test_nack.rb +0 -45
- data/test/lib/mega/test_nilcomparable.rb +0 -43
- data/test/lib/mega/test_notcopyable.rb +0 -74
- data/test/lib/mega/test_openobject.rb +0 -66
- data/test/lib/mega/test_ostructable.rb +0 -43
- data/test/lib/mega/test_package.rb +0 -39
- data/test/lib/mega/test_promoteself.rb +0 -45
- data/test/lib/mega/test_snapshot.rb +0 -34
- data/test/lib/mega/test_statichash.rb +0 -31
- data/test/lib/mega/test_superstruct.rb +0 -334
- data/test/lib/mega/test_syncarray.rb +0 -28
- data/test/lib/mega/test_synchash.rb +0 -28
- data/test/lib/mega/test_tagiter.rb +0 -93
- data/test/lib/mega/test_time_in_english.rb +0 -73
- data/test/lib/mega/test_timer.rb +0 -66
- data/test/lib/mega/test_tuple.rb +0 -32
- data/test/lib/mega/test_uninheritable.rb +0 -42
- data/test/lib/mega/test_units.rb +0 -104
- data/test/lib/mega/test_version.rb +0 -104
- data/test/lib/nano/array/test_at_rand.rb +0 -34
- data/test/lib/nano/array/test_body.rb +0 -27
- data/test/lib/nano/array/test_delete_unless.rb +0 -28
- data/test/lib/nano/array/test_delete_values.rb +0 -28
- data/test/lib/nano/array/test_delete_values_at.rb +0 -31
- data/test/lib/nano/array/test_first.rb +0 -34
- data/test/lib/nano/array/test_foot.rb +0 -27
- data/test/lib/nano/array/test_head.rb +0 -27
- data/test/lib/nano/array/test_last.rb +0 -34
- data/test/lib/nano/array/test_last_index.rb +0 -26
- data/test/lib/nano/array/test_merge.rb +0 -35
- data/test/lib/nano/array/test_mid.rb +0 -33
- data/test/lib/nano/array/test_middle.rb +0 -29
- data/test/lib/nano/array/test_op_fetch.rb +0 -27
- data/test/lib/nano/array/test_op_store.rb +0 -30
- data/test/lib/nano/array/test_pick.rb +0 -40
- data/test/lib/nano/array/test_pos.rb +0 -28
- data/test/lib/nano/array/test_pull.rb +0 -28
- data/test/lib/nano/array/test_rand_index.rb +0 -29
- data/test/lib/nano/array/test_rand_subset.rb +0 -29
- data/test/lib/nano/array/test_range.rb +0 -32
- data/test/lib/nano/array/test_rotate.rb +0 -36
- data/test/lib/nano/array/test_select.rb +0 -28
- data/test/lib/nano/array/test_shuffle.rb +0 -35
- data/test/lib/nano/array/test_slap.rb +0 -28
- data/test/lib/nano/array/test_tail.rb +0 -27
- data/test/lib/nano/array/test_thru.rb +0 -27
- data/test/lib/nano/array/test_to_b.rb +0 -27
- data/test/lib/nano/array/test_to_h.rb +0 -33
- data/test/lib/nano/array/test_to_hash.rb +0 -27
- data/test/lib/nano/binding/self/test_of_caller.rb +0 -35
- data/test/lib/nano/binding/test___LINE__.rb +0 -43
- data/test/lib/nano/binding/test_call_stack.rb +0 -34
- data/test/lib/nano/binding/test_called.rb +0 -30
- data/test/lib/nano/binding/test_caller.rb +0 -35
- data/test/lib/nano/binding/test_defined.rb +0 -34
- data/test/lib/nano/binding/test_eval.rb +0 -34
- data/test/lib/nano/binding/test_local_variables.rb +0 -34
- data/test/lib/nano/binding/test_method_name.rb +0 -34
- data/test/lib/nano/binding/test_op_fetch.rb +0 -34
- data/test/lib/nano/binding/test_op_store.rb +0 -35
- data/test/lib/nano/binding/test_self.rb +0 -34
- data/test/lib/nano/class/test_descendents.rb +0 -30
- data/test/lib/nano/class/test_remove_descendents.rb +0 -32
- data/test/lib/nano/comparable/test_at_least.rb +0 -34
- data/test/lib/nano/comparable/test_clip.rb +0 -44
- data/test/lib/nano/comparable/test_cmp.rb +0 -28
- data/test/lib/nano/continuation/self/test_create.rb +0 -26
- data/test/lib/nano/date/test_days_in_month.rb +0 -30
- data/test/lib/nano/date/test_days_of_month.rb +0 -30
- data/test/lib/nano/date/test_stamp.rb +0 -38
- data/test/lib/nano/date/test_to_date.rb +0 -30
- data/test/lib/nano/date/test_to_s.rb +0 -30
- data/test/lib/nano/date/test_to_time.rb +0 -30
- data/test/lib/nano/dir/self/test_ancestor.rb +0 -26
- data/test/lib/nano/dir/self/test_ascend.rb +0 -41
- data/test/lib/nano/dir/self/test_ls_r.rb +0 -52
- data/test/lib/nano/enumerable/self/test_combinations.rb +0 -43
- data/test/lib/nano/enumerable/self/test_cross.rb +0 -31
- data/test/lib/nano/enumerable/test_collect_with_index.rb +0 -27
- data/test/lib/nano/enumerable/test_commonality.rb +0 -31
- data/test/lib/nano/enumerable/test_compact_collect.rb +0 -27
- data/test/lib/nano/enumerable/test_cross.rb +0 -30
- data/test/lib/nano/enumerable/test_each_combination.rb +0 -29
- data/test/lib/nano/enumerable/test_each_pair.rb +0 -29
- data/test/lib/nano/enumerable/test_each_slice.rb +0 -74
- data/test/lib/nano/enumerable/test_each_unique_pair.rb +0 -29
- data/test/lib/nano/enumerable/test_entropy.rb +0 -26
- data/test/lib/nano/enumerable/test_every.rb +0 -35
- data/test/lib/nano/enumerable/test_ew.rb +0 -31
- data/test/lib/nano/enumerable/test_filter_collect.rb +0 -31
- data/test/lib/nano/enumerable/test_find_collisions.rb +0 -30
- data/test/lib/nano/enumerable/test_frequency.rb +0 -27
- data/test/lib/nano/enumerable/test_graph.rb +0 -30
- data/test/lib/nano/enumerable/test_ideal_entropy.rb +0 -27
- data/test/lib/nano/enumerable/test_none.rb +0 -33
- data/test/lib/nano/enumerable/test_occur.rb +0 -30
- data/test/lib/nano/enumerable/test_one.rb +0 -35
- data/test/lib/nano/enumerable/test_op_pow.rb +0 -27
- data/test/lib/nano/enumerable/test_partition_by.rb +0 -31
- data/test/lib/nano/enumerable/test_probability.rb +0 -27
- data/test/lib/nano/enumerable/test_to_h.rb +0 -27
- data/test/lib/nano/enumerable/test_uniq_by.rb +0 -28
- data/test/lib/nano/file/self/test_create.rb +0 -39
- data/test/lib/nano/file/self/test_open_as_string.rb +0 -40
- data/test/lib/nano/file/self/test_read_list.rb +0 -37
- data/test/lib/nano/file/self/test_sanitize.rb +0 -46
- data/test/lib/nano/file/self/test_split_all.rb +0 -27
- data/test/lib/nano/fileutils/test_slice.rb +0 -96
- data/test/lib/nano/fileutils/test_wc.rb +0 -68
- data/test/lib/nano/fileutils/test_which.rb +0 -61
- data/test/lib/nano/float/test_approx.rb +0 -28
- data/test/lib/nano/float/test_round_at.rb +0 -46
- data/test/lib/nano/float/test_round_to.rb +0 -46
- data/test/lib/nano/hash/self/test_zipnew.rb +0 -28
- data/test/lib/nano/hash/test_alias.rb +0 -31
- data/test/lib/nano/hash/test_assert_has_keys.rb +0 -27
- data/test/lib/nano/hash/test_assert_has_only_keys.rb +0 -27
- data/test/lib/nano/hash/test_at.rb +0 -28
- data/test/lib/nano/hash/test_collate.rb +0 -35
- data/test/lib/nano/hash/test_each.rb +0 -36
- data/test/lib/nano/hash/test_each_with_index.rb +0 -29
- data/test/lib/nano/hash/test_each_with_key.rb +0 -29
- data/test/lib/nano/hash/test_graph.rb +0 -28
- data/test/lib/nano/hash/test_has_keys.rb +0 -27
- data/test/lib/nano/hash/test_has_only_keys.rb +0 -27
- data/test/lib/nano/hash/test_inverse.rb +0 -28
- data/test/lib/nano/hash/test_keys_to_s.rb +0 -34
- data/test/lib/nano/hash/test_keys_to_sym.rb +0 -34
- data/test/lib/nano/hash/test_op_fetch.rb +0 -111
- data/test/lib/nano/hash/test_op_lshift.rb +0 -29
- data/test/lib/nano/hash/test_rand_key.rb +0 -27
- data/test/lib/nano/hash/test_rand_pair.rb +0 -27
- data/test/lib/nano/hash/test_rand_value.rb +0 -27
- data/test/lib/nano/hash/test_replace_each.rb +0 -29
- data/test/lib/nano/hash/test_shuffle.rb +0 -32
- data/test/lib/nano/hash/test_slice.rb +0 -27
- data/test/lib/nano/hash/test_swap.rb +0 -27
- data/test/lib/nano/hash/test_swapkey.rb +0 -29
- data/test/lib/nano/hash/test_to_h.rb +0 -27
- data/test/lib/nano/hash/test_to_ostruct.rb +0 -30
- data/test/lib/nano/hash/test_to_ostruct_recurse.rb +0 -30
- data/test/lib/nano/hash/test_traverse.rb +0 -37
- data/test/lib/nano/hash/test_update_each.rb +0 -29
- data/test/lib/nano/hash/test_update_keys.rb +0 -28
- data/test/lib/nano/hash/test_update_values.rb +0 -28
- data/test/lib/nano/hash/test_weave.rb +0 -29
- data/test/lib/nano/integer/test_factorial.rb +0 -30
- data/test/lib/nano/integer/test_multiple.rb +0 -43
- data/test/lib/nano/integer/test_ordinal.rb +0 -29
- data/test/lib/nano/integer/test_times_collect.rb +0 -28
- data/test/lib/nano/integer/test_times_map.rb +0 -28
- data/test/lib/nano/kernel/test___class__.rb +0 -26
- data/test/lib/nano/kernel/test_as.rb +0 -42
- data/test/lib/nano/kernel/test_assign_from.rb +0 -31
- data/test/lib/nano/kernel/test_assign_with.rb +0 -31
- data/test/lib/nano/kernel/test_bool.rb +0 -41
- data/test/lib/nano/kernel/test_bug.rb +0 -26
- data/test/lib/nano/kernel/test_call_stack.rb +0 -26
- data/test/lib/nano/kernel/test_called.rb +0 -26
- data/test/lib/nano/kernel/test_constant.rb +0 -33
- data/test/lib/nano/kernel/test_copy.rb +0 -40
- data/test/lib/nano/kernel/test_deep_copy.rb +0 -40
- data/test/lib/nano/kernel/test_demo.rb +0 -28
- data/test/lib/nano/kernel/test_fn.rb +0 -26
- data/test/lib/nano/kernel/test_generate_method_name.rb +0 -26
- data/test/lib/nano/kernel/test_get_by_id.rb +0 -28
- data/test/lib/nano/kernel/test_here.rb +0 -26
- data/test/lib/nano/kernel/test_in.rb +0 -27
- data/test/lib/nano/kernel/test_maybe.rb +0 -26
- data/test/lib/nano/kernel/test_metaclass.rb +0 -34
- data/test/lib/nano/kernel/test_method.rb +0 -32
- data/test/lib/nano/kernel/test_method_name.rb +0 -31
- data/test/lib/nano/kernel/test_methods.rb +0 -50
- data/test/lib/nano/kernel/test_new.rb +0 -30
- data/test/lib/nano/kernel/test_object_class.rb +0 -26
- data/test/lib/nano/kernel/test_object_hexid.rb +0 -27
- data/test/lib/nano/kernel/test_require_all.rb +0 -26
- data/test/lib/nano/kernel/test_require_esc.rb +0 -27
- data/test/lib/nano/kernel/test_require_facet.rb +0 -27
- data/test/lib/nano/kernel/test_resc.rb +0 -27
- data/test/lib/nano/kernel/test_returning.rb +0 -30
- data/test/lib/nano/kernel/test_send_as.rb +0 -26
- data/test/lib/nano/kernel/test_set_from.rb +0 -33
- data/test/lib/nano/kernel/test_set_with.rb +0 -33
- data/test/lib/nano/kernel/test_silently.rb +0 -28
- data/test/lib/nano/kernel/test_singleton.rb +0 -40
- data/test/lib/nano/kernel/test_superior.rb +0 -30
- data/test/lib/nano/kernel/test_supermethod.rb +0 -33
- data/test/lib/nano/kernel/test_this.rb +0 -26
- data/test/lib/nano/kernel/test_to_b.rb +0 -28
- data/test/lib/nano/kernel/test_to_bool.rb +0 -28
- data/test/lib/nano/kernel/test_uri.rb +0 -30
- data/test/lib/nano/kernel/test_val.rb +0 -43
- data/test/lib/nano/kernel/test_with_accessor.rb +0 -51
- data/test/lib/nano/matchdata/test_match.rb +0 -29
- data/test/lib/nano/matchdata/test_matchtree.rb +0 -32
- data/test/lib/nano/module/test_abstract.rb +0 -36
- data/test/lib/nano/module/test_alias_module_function.rb +0 -34
- data/test/lib/nano/module/test_ancestor.rb +0 -26
- data/test/lib/nano/module/test_basename.rb +0 -26
- data/test/lib/nano/module/test_by_name.rb +0 -29
- data/test/lib/nano/module/test_cattr_accessor.rb +0 -55
- data/test/lib/nano/module/test_clone_using.rb +0 -55
- data/test/lib/nano/module/test_dirname.rb +0 -26
- data/test/lib/nano/module/test_equate_on.rb +0 -37
- data/test/lib/nano/module/test_generate_instance_method_name.rb +0 -33
- data/test/lib/nano/module/test_include_as.rb +0 -35
- data/test/lib/nano/module/test_initializer.rb +0 -32
- data/test/lib/nano/module/test_instance_methods.rb +0 -59
- data/test/lib/nano/module/test_integrate.rb +0 -35
- data/test/lib/nano/module/test_memoize.rb +0 -50
- data/test/lib/nano/module/test_modspace.rb +0 -27
- data/test/lib/nano/module/test_namespace.rb +0 -33
- data/test/lib/nano/module/test_nesting.rb +0 -36
- data/test/lib/nano/module/test_redef.rb +0 -30
- data/test/lib/nano/module/test_redefine_method.rb +0 -30
- data/test/lib/nano/module/test_redirect.rb +0 -30
- data/test/lib/nano/module/test_redirect_method.rb +0 -30
- data/test/lib/nano/module/test_remove.rb +0 -30
- data/test/lib/nano/module/test_rename.rb +0 -31
- data/test/lib/nano/module/test_rename_method.rb +0 -31
- data/test/lib/nano/module/test_revisal.rb +0 -35
- data/test/lib/nano/module/test_shadow_method.rb +0 -30
- data/test/lib/nano/module/test_sort_on.rb +0 -42
- data/test/lib/nano/module/test_undef.rb +0 -30
- data/test/lib/nano/module/test_wrap.rb +0 -30
- data/test/lib/nano/module/test_wrap_method.rb +0 -30
- data/test/lib/nano/nilclass/test_empty.rb +0 -26
- data/test/lib/nano/nilclass/test_include.rb +0 -26
- data/test/lib/nano/nilclass/test_op_fetch.rb +0 -28
- data/test/lib/nano/nilclass/test_size.rb +0 -30
- data/test/lib/nano/nilclass/test_to_f.rb +0 -26
- data/test/lib/nano/nilclass/test_to_h.rb +0 -26
- data/test/lib/nano/numeric/test_ceil_multiple.rb +0 -31
- data/test/lib/nano/numeric/test_succ.rb +0 -40
- data/test/lib/nano/numeric/test_to_b.rb +0 -27
- data/test/lib/nano/ostruct/test___merge__.rb +0 -38
- data/test/lib/nano/ostruct/test___update__.rb +0 -29
- data/test/lib/nano/ostruct/test_op_fetch.rb +0 -27
- data/test/lib/nano/ostruct/test_op_store.rb +0 -28
- data/test/lib/nano/proc/test_compose.rb +0 -36
- data/test/lib/nano/proc/test_to_method.rb +0 -31
- data/test/lib/nano/range/test_to_r.rb +0 -27
- data/test/lib/nano/range/test_to_range.rb +0 -27
- data/test/lib/nano/range/test_umbrella.rb +0 -34
- data/test/lib/nano/range/test_within.rb +0 -29
- data/test/lib/nano/regexp/test_arity.rb +0 -33
- data/test/lib/nano/regexp/test_to_re.rb +0 -27
- data/test/lib/nano/regexp/test_to_regexp.rb +0 -27
- data/test/lib/nano/string/self/test_interpolate.rb +0 -27
- data/test/lib/nano/string/self/test_patterns.rb +0 -28
- data/test/lib/nano/string/self/test_rand_letter.rb +0 -26
- data/test/lib/nano/string/test_align_center.rb +0 -34
- data/test/lib/nano/string/test_at_rand.rb +0 -35
- data/test/lib/nano/string/test_basename.rb +0 -41
- data/test/lib/nano/string/test_blank.rb +0 -27
- data/test/lib/nano/string/test_bracket.rb +0 -49
- data/test/lib/nano/string/test_camelcase.rb +0 -39
- data/test/lib/nano/string/test_camelize.rb +0 -26
- data/test/lib/nano/string/test_capitalized.rb +0 -26
- data/test/lib/nano/string/test_chars.rb +0 -27
- data/test/lib/nano/string/test_cmp.rb +0 -30
- data/test/lib/nano/string/test_demodulize.rb +0 -38
- data/test/lib/nano/string/test_downcase.rb +0 -26
- data/test/lib/nano/string/test_dresner.rb +0 -32
- data/test/lib/nano/string/test_each_char.rb +0 -29
- data/test/lib/nano/string/test_each_word.rb +0 -29
- data/test/lib/nano/string/test_first.rb +0 -43
- data/test/lib/nano/string/test_fold.rb +0 -28
- data/test/lib/nano/string/test_frequency.rb +0 -28
- data/test/lib/nano/string/test_humanize.rb +0 -26
- data/test/lib/nano/string/test_indent.rb +0 -40
- data/test/lib/nano/string/test_index_all.rb +0 -26
- data/test/lib/nano/string/test_last.rb +0 -46
- data/test/lib/nano/string/test_line_wrap.rb +0 -27
- data/test/lib/nano/string/test_lines.rb +0 -26
- data/test/lib/nano/string/test_lowercase.rb +0 -26
- data/test/lib/nano/string/test_margin.rb +0 -117
- data/test/lib/nano/string/test_mscan.rb +0 -30
- data/test/lib/nano/string/test_natcmp.rb +0 -30
- data/test/lib/nano/string/test_nchar.rb +0 -29
- data/test/lib/nano/string/test_pop.rb +0 -47
- data/test/lib/nano/string/test_probability.rb +0 -28
- data/test/lib/nano/string/test_push.rb +0 -40
- data/test/lib/nano/string/test_quote.rb +0 -49
- data/test/lib/nano/string/test_rand_byte.rb +0 -35
- data/test/lib/nano/string/test_rand_index.rb +0 -26
- data/test/lib/nano/string/test_range.rb +0 -27
- data/test/lib/nano/string/test_range_all.rb +0 -27
- data/test/lib/nano/string/test_range_of_line.rb +0 -28
- data/test/lib/nano/string/test_shatter.rb +0 -29
- data/test/lib/nano/string/test_shift.rb +0 -40
- data/test/lib/nano/string/test_shuffle.rb +0 -27
- data/test/lib/nano/string/test_similarity.rb +0 -26
- data/test/lib/nano/string/test_singular.rb +0 -32
- data/test/lib/nano/string/test_slap.rb +0 -40
- data/test/lib/nano/string/test_soundex.rb +0 -41
- data/test/lib/nano/string/test_succ.rb +0 -29
- data/test/lib/nano/string/test_to_a.rb +0 -27
- data/test/lib/nano/string/test_to_arr.rb +0 -26
- data/test/lib/nano/string/test_to_b.rb +0 -41
- data/test/lib/nano/string/test_to_const.rb +0 -28
- data/test/lib/nano/string/test_to_date.rb +0 -30
- data/test/lib/nano/string/test_to_proc.rb +0 -33
- data/test/lib/nano/string/test_to_re.rb +0 -28
- data/test/lib/nano/string/test_to_time.rb +0 -30
- data/test/lib/nano/string/test_unix_crypt.rb +0 -30
- data/test/lib/nano/string/test_unpack.rb +0 -34
- data/test/lib/nano/string/test_unshift.rb +0 -39
- data/test/lib/nano/string/test_upcase.rb +0 -30
- data/test/lib/nano/string/test_whitespace.rb +0 -27
- data/test/lib/nano/string/test_word_filter.rb +0 -34
- data/test/lib/nano/string/test_word_wrap.rb +0 -51
- data/test/lib/nano/string/test_words.rb +0 -27
- data/test/lib/nano/symbol/test_camelcase.rb +0 -26
- data/test/lib/nano/symbol/test_camelize.rb +0 -27
- data/test/lib/nano/symbol/test_capitalize.rb +0 -26
- data/test/lib/nano/symbol/test_capitalized.rb +0 -27
- data/test/lib/nano/symbol/test_downcase.rb +0 -27
- data/test/lib/nano/symbol/test_not.rb +0 -29
- data/test/lib/nano/symbol/test_pad.rb +0 -27
- data/test/lib/nano/symbol/test_succ.rb +0 -28
- data/test/lib/nano/symbol/test_to_const.rb +0 -28
- data/test/lib/nano/symbol/test_to_proc.rb +0 -27
- data/test/lib/nano/symbol/test_to_str.rb +0 -28
- data/test/lib/nano/symbol/test_underscore.rb +0 -26
- data/test/lib/nano/symbol/test_upcase.rb +0 -27
- data/test/lib/nano/time/test_change.rb +0 -33
- data/test/lib/nano/time/test_elapse.rb +0 -27
- data/test/lib/nano/time/test_stamp.rb +0 -31
- data/test/lib/nano/time/test_to_date.rb +0 -31
- data/test/lib/nano/time/test_to_s.rb +0 -31
- data/test/lib/nano/time/test_to_time.rb +0 -31
- data/test/lib/unit/test_methodprobe.rb +0 -53
- data/test/tc_nil_as_emptiness.rb +0 -20
- data/web/favicon.ico +0 -0
- data/web/images/abc.png +0 -0
- data/web/images/abc1.png +0 -0
- data/web/images/gray.jpg +0 -0
- data/web/images/ruby-lg.png +0 -0
- data/web/images/ruby.gif +0 -0
- data/web/index.html +0 -310
data/lib/mega/interval.rb
DELETED
@@ -1,426 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# Interval
|
3
|
-
#
|
4
|
-
# Copyright (c) 2004,2005 Thomas Sawyer
|
5
|
-
#
|
6
|
-
# Ruby License
|
7
|
-
#
|
8
|
-
# This module is free software. You may use, modify, and/or redistribute this
|
9
|
-
# software under the same terms as Ruby.
|
10
|
-
#
|
11
|
-
# This program is distributed in the hope that it will be useful, but WITHOUT
|
12
|
-
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
13
|
-
# FOR A PARTICULAR PURPOSE.
|
14
|
-
#
|
15
|
-
#
|
16
|
-
# ==========================================================================
|
17
|
-
# Revision History ::
|
18
|
-
# --------------------------------------------------------------------------
|
19
|
-
# 04.06 Trans * Minor modifications to documentation.
|
20
|
-
# ==========================================================================
|
21
|
-
#
|
22
|
-
# :NOTE: Still need to tie in Infinity.
|
23
|
-
#
|
24
|
-
#++
|
25
|
-
|
26
|
-
#:title: Interval
|
27
|
-
#
|
28
|
-
# While Ruby support the Range class out of the box, is does not quite
|
29
|
-
# fullfil the role od a real Interval class. For instance, it does
|
30
|
-
# not support excluding the front sentinel. This is because Range
|
31
|
-
# also tries to do triple duty as a simple Sequence and as a simple Tuple-Pair,
|
32
|
-
# thus limiting its potential as an Interval. The Interval class remedies
|
33
|
-
# the situation by commiting to interval behavior, and then extends the class'
|
34
|
-
# capabilites beyond that of the standard Range in ways that naturally
|
35
|
-
# fall out of that.
|
36
|
-
#
|
37
|
-
# Range depends on two methods: #succ and #<=>. If numeric
|
38
|
-
# ranges were the only concern, those could just as well be #+ and #<=>,
|
39
|
-
# but esoteric forms make that unfeasible --the obvious example being a String
|
40
|
-
# range. But a proper Interval class requires mathematical continuation,
|
41
|
-
# thus the Interval depends on #+ and #<=>, as well as #- as the inverse of #+.
|
42
|
-
#
|
43
|
-
# == Synopsis
|
44
|
-
#
|
45
|
-
# require 'mega/interval'
|
46
|
-
#
|
47
|
-
# i = Interval.new(1,5)
|
48
|
-
# i.to_a #=> [1,2,3,4,5]
|
49
|
-
#
|
50
|
-
# i = Interval[0,5]
|
51
|
-
# i.to_a(2) #=> [0,2,4]
|
52
|
-
#
|
53
|
-
# i = Interval[1,5]
|
54
|
-
# i.to_a(-1) #=> [5,4,3,2,1]
|
55
|
-
#
|
56
|
-
# i = Interval[1,3]
|
57
|
-
# i.to_a(1,2) #=> [1.0,1.5,2.0,2.5,3.0]
|
58
|
-
#
|
59
|
-
# == Author(s)
|
60
|
-
#
|
61
|
-
# * Thomas Sawyer
|
62
|
-
#
|
63
|
-
|
64
|
-
require 'mega/multiton'
|
65
|
-
require 'mega/enumerable_args'
|
66
|
-
#require 'mega/infinity'
|
67
|
-
|
68
|
-
class Interval
|
69
|
-
|
70
|
-
include Multiton::New
|
71
|
-
include EnumerableArgs
|
72
|
-
|
73
|
-
def self.[]( *args )
|
74
|
-
self.new( *args )
|
75
|
-
end
|
76
|
-
|
77
|
-
def initialize(first, last, exclude_first=false, exclude_last=false )
|
78
|
-
raise ArgumentError, "bad value for interval" if first.class != last.class
|
79
|
-
@first = first
|
80
|
-
@last = last
|
81
|
-
@exclude_first = exclude_first
|
82
|
-
@exclude_last = exclude_last
|
83
|
-
@direction = (@last <=> @first)
|
84
|
-
end
|
85
|
-
|
86
|
-
# Returns a two element array of first and last sentinels.
|
87
|
-
#
|
88
|
-
# (0..10).sentinels #=> [0,10]
|
89
|
-
#
|
90
|
-
def sentinels
|
91
|
-
return [@first, @last]
|
92
|
-
end
|
93
|
-
|
94
|
-
# Returns the first or last sentinal of the interval.
|
95
|
-
def first ; @first ; end
|
96
|
-
def last ; @last ; end
|
97
|
-
|
98
|
-
#
|
99
|
-
def exclude_first? ; @exclude_first ; end
|
100
|
-
def exclude_last? ; @exclude_last ; end
|
101
|
-
|
102
|
-
# (IMHO) these should be deprectated
|
103
|
-
alias_method( :begin, :first )
|
104
|
-
alias_method( :end, :last )
|
105
|
-
alias_method( :exclude_begin?, :exclude_first? )
|
106
|
-
alias_method( :exclude_end?, :exclude_last? )
|
107
|
-
|
108
|
-
# Returns +true+ if the start and end sentinels are equal and the interval is closed; otherwise +false+.
|
109
|
-
def degenerate? ; @direction == 0 and ! (@exclusive_first or @exclusive_last) ; end
|
110
|
-
|
111
|
-
# Returns +true+ if the start and end sentinels are equal and the interval is open; otherwise +false+.
|
112
|
-
def null? ; @direction == 0 and @exclusive_first and @exclusive_last ; end
|
113
|
-
|
114
|
-
# Returns the direction of the interval indicated by +1, 0 or -1.
|
115
|
-
#
|
116
|
-
# (1..5).direction #=> 1
|
117
|
-
# (5..1).direction #=> -1
|
118
|
-
# (1..1).direction #=> 0
|
119
|
-
#
|
120
|
-
def direction ; @direction ; end
|
121
|
-
|
122
|
-
# Returns a new interval inclusive of of both sentinels.
|
123
|
-
def closed; Interval.new(@first, @last, true, true) ; end
|
124
|
-
|
125
|
-
# Returns a new interval exclusive of both sentinels.
|
126
|
-
def opened; Interval.new(@first, @last, true, true) ; end
|
127
|
-
|
128
|
-
# Returns a new interval with either the first or the last sentinel exclusive.
|
129
|
-
# If the parameter is false, the deafult, then the first sentinel is excluded;
|
130
|
-
# if the parameter is true, the last sentinel is excluded.
|
131
|
-
def half_closed(e=false)
|
132
|
-
e ? Interval.new(@first, @last, true, false) : Interval.new(@first, @last, false, true)
|
133
|
-
end
|
134
|
-
|
135
|
-
# Returns a new interval with one of the two sentinels opened or closed
|
136
|
-
def first_closed ; Interval.new(@first, @last, false, true) ; end
|
137
|
-
def last_closed ; Interval.new(@first, @last, true, false) ; end
|
138
|
-
def first_opened ; Interval.new(@first, @last, true, false) ; end
|
139
|
-
def last_opened ; Interval.new(@first, @last, false, true) ; end
|
140
|
-
|
141
|
-
# Unary shorthands. These return a new interval exclusive of first,
|
142
|
-
# last or both sentinels, repectively.
|
143
|
-
def +@ ; Interval.new(first, last, true, false) ; end
|
144
|
-
def -@ ; Interval.new(first, last, false, true) ; end
|
145
|
-
def ~@ ; Interval.new(first, last, true, true) ; end
|
146
|
-
|
147
|
-
# Returns a new interval with the sentinels reversed.
|
148
|
-
#
|
149
|
-
# (0..10).reversed #=> 10..0
|
150
|
-
#
|
151
|
-
def reversed
|
152
|
-
Interval.new(@last, @first, true, true)
|
153
|
-
end
|
154
|
-
|
155
|
-
# Returns the length of the interval as the difference between
|
156
|
-
# the first and last elements. Returns +nil+ if the sentinal objects
|
157
|
-
# do not support distance comparison (#distance).
|
158
|
-
# TODO: Add +n+ parameter to count segmentations like those produced by #each.
|
159
|
-
def distance
|
160
|
-
@last - @first
|
161
|
-
#if @last.respond_to?( :distance )
|
162
|
-
# @last.distance( @first )
|
163
|
-
#else
|
164
|
-
# #self.to_a.length
|
165
|
-
#end
|
166
|
-
end
|
167
|
-
alias_method( :length, :distance )
|
168
|
-
alias_method( :size, :distance )
|
169
|
-
|
170
|
-
# Returns the lesser of the first and last sentinals.
|
171
|
-
def min
|
172
|
-
((@first <=> @last) == -1) ? @first : @last
|
173
|
-
end
|
174
|
-
|
175
|
-
# Returns the greater of the first and last sentinals.
|
176
|
-
def max
|
177
|
-
((@first <=> @last) == 1) ? @first : @last
|
178
|
-
end
|
179
|
-
|
180
|
-
# Returns true or false if the element is part of the interval.
|
181
|
-
def include?(x)
|
182
|
-
# todo: infinity?
|
183
|
-
tf = exclude_first? ? 1 : 0
|
184
|
-
tl = exclude_last? ? -1 : 0
|
185
|
-
(x <=> first) >= tf and (x <=> last) <= tl
|
186
|
-
end
|
187
|
-
alias_method( :===, :include? )
|
188
|
-
alias_method( :member?, :include? )
|
189
|
-
|
190
|
-
=begin
|
191
|
-
# def include?(x)
|
192
|
-
# tf = exclude_first? ? 1 : 0
|
193
|
-
# tl = exclude_last? ? -1 : 0
|
194
|
-
# # if other classes handled Infinity in their <=> method
|
195
|
-
# # (which probably they should) this clause would not be required
|
196
|
-
# if first.kind_of?(InfinityClass)
|
197
|
-
# ft = ((first <=> x) <= tf)
|
198
|
-
# else
|
199
|
-
# ft = (x <=> first) >= tf
|
200
|
-
# end
|
201
|
-
# if last.kind_of?(InfinityClass)
|
202
|
-
# fl = ((last <=> x) >= tl)
|
203
|
-
# else
|
204
|
-
# fl = (x <=> last) <= tl
|
205
|
-
# end
|
206
|
-
# ft && fl
|
207
|
-
# end
|
208
|
-
=end
|
209
|
-
|
210
|
-
# Iterates over the interval, passing each _n_th element to the block.
|
211
|
-
# If n is not given then n defaults to 1. Each _n_th step is determined
|
212
|
-
# by invoking +\++ or +\-+ n, depending on the direction of the interval.
|
213
|
-
# If n is negative the iteration is preformed in reverse form end sentinal
|
214
|
-
# to front sentinal. A second parameter, d, can be given in which case
|
215
|
-
# the applied step is calculated as a fraction of the interval's length
|
216
|
-
# times n / d. This allows iteration over the whole interval in equal sized
|
217
|
-
# segments.
|
218
|
-
#
|
219
|
-
# 1..5.each { |e| ... } #=> 1 2 3 4 5
|
220
|
-
# 1..5.each(2) { |e| ... } #=> 1 3 5
|
221
|
-
# 1..5.each(1,2) { |e| ... } #=> 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
|
222
|
-
#
|
223
|
-
def each(n=1, d=nil) # :yield:
|
224
|
-
return (n < 0 ? @last : @first) if degenerate? # is this right for all values of n ?
|
225
|
-
s = d ? self.length.to_f * (n.to_f / d.to_f) : n.abs
|
226
|
-
raise "Cannot iterate over zero length steps." if s == 0
|
227
|
-
s = s * @direction
|
228
|
-
if n < 0
|
229
|
-
e = @exclude_last ? @last - s : @last
|
230
|
-
#e = @exclude_last ? @last.pred(s) : @last
|
231
|
-
t = @exlude_last ? 1 : 0
|
232
|
-
#while e.cmp(@first) >= t
|
233
|
-
while (e <=> @first) >= t
|
234
|
-
yield(e)
|
235
|
-
e -= s
|
236
|
-
#e = e.pred(s)
|
237
|
-
end
|
238
|
-
else
|
239
|
-
e = @exclude_first ? @first + s : @first
|
240
|
-
#e = @exclude_first ? @first.succ(s) : @first
|
241
|
-
t = @exlude_last ? -1 : 0
|
242
|
-
#while e.cmp(@last) <= t
|
243
|
-
while (e <=> @last) <= t
|
244
|
-
yield(e)
|
245
|
-
e += s
|
246
|
-
#e = e.succ(s)
|
247
|
-
end
|
248
|
-
end
|
249
|
-
end
|
250
|
-
alias_method( :step, :each )
|
251
|
-
|
252
|
-
# Should there be a #reverse_each ?
|
253
|
-
# Since #each can now take a negative argument, this isn't really needed.
|
254
|
-
# Should it exist anyway and routed to #each?
|
255
|
-
# Also, alias_method( :reverse_step, :reverse_each )
|
256
|
-
|
257
|
-
# Compares two intervals to see if they are equal
|
258
|
-
def eql?(other)
|
259
|
-
return false unless @first == other.first
|
260
|
-
return false unless @last == other.last
|
261
|
-
return false unless @exclude_first == other.exclude_first?
|
262
|
-
return false unless @exclude_last == other.exclude_last?
|
263
|
-
true
|
264
|
-
end
|
265
|
-
|
266
|
-
end
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
# _____ _
|
271
|
-
# |_ _|__ ___| |_
|
272
|
-
# | |/ _ \/ __| __|
|
273
|
-
# | | __/\__ \ |_
|
274
|
-
# |_|\___||___/\__|
|
275
|
-
#
|
276
|
-
|
277
|
-
=begin testing
|
278
|
-
|
279
|
-
require 'test/unit'
|
280
|
-
|
281
|
-
class InclusiveTest < Test::Unit::TestCase
|
282
|
-
|
283
|
-
def setup
|
284
|
-
@a = Interval.new( 1, 10 )
|
285
|
-
@b = Interval.new( 1, 10, true, false )
|
286
|
-
@c = Interval.new( 1, 10, false, true )
|
287
|
-
@d = Interval.new( 1, 10, true, true )
|
288
|
-
end
|
289
|
-
|
290
|
-
def test_001A ; assert_equal( false, @a.include?(0) ) ; end
|
291
|
-
def test_002A ; assert_equal( true, @a.include?(1) ) ; end
|
292
|
-
def test_003A ; assert_equal( true, @a.include?(2) ) ; end
|
293
|
-
def test_004A ; assert_equal( true, @a.include?(9) ) ; end
|
294
|
-
def test_005A ; assert_equal( true, @a.include?(10) ) ; end
|
295
|
-
def test_006A ; assert_equal( false, @a.include?(11) ) ; end
|
296
|
-
|
297
|
-
def test_001B ; assert_equal( false, @b.include?(0) ) ; end
|
298
|
-
def test_002B ; assert_equal( false, @b.include?(1) ) ; end
|
299
|
-
def test_003B ; assert_equal( true, @b.include?(2) ) ; end
|
300
|
-
def test_004B ; assert_equal( true, @b.include?(9) ) ; end
|
301
|
-
def test_005B ; assert_equal( true, @b.include?(10) ) ; end
|
302
|
-
def test_006B ; assert_equal( false, @b.include?(11) ) ; end
|
303
|
-
|
304
|
-
def test_001C ; assert_equal( false, @c.include?(0) ) ; end
|
305
|
-
def test_002C ; assert_equal( true, @c.include?(1) ) ; end
|
306
|
-
def test_003C ; assert_equal( true, @c.include?(2) ) ; end
|
307
|
-
def test_004C ; assert_equal( true, @c.include?(9) ) ; end
|
308
|
-
def test_005C ; assert_equal( false, @c.include?(10) ) ; end
|
309
|
-
def test_006C ; assert_equal( false, @c.include?(11) ) ; end
|
310
|
-
|
311
|
-
def test_001D ; assert_equal( false, @d.include?(0) ) ; end
|
312
|
-
def test_002D ; assert_equal( false, @d.include?(1) ) ; end
|
313
|
-
def test_003D ; assert_equal( true, @d.include?(2) ) ; end
|
314
|
-
def test_004D ; assert_equal( true, @d.include?(9) ) ; end
|
315
|
-
def test_005D ; assert_equal( false, @d.include?(10) ) ; end
|
316
|
-
def test_006D ; assert_equal( false, @d.include?(11) ) ; end
|
317
|
-
|
318
|
-
end
|
319
|
-
|
320
|
-
class LrgNumericTest < Test::Unit::TestCase
|
321
|
-
|
322
|
-
def setup
|
323
|
-
@a = Interval.new(0,100000000)
|
324
|
-
@b = Interval.new(0,100000000)
|
325
|
-
end
|
326
|
-
|
327
|
-
def test_001A ; assert_equal( true, @a.include?(0) ) ; end
|
328
|
-
def test_002A ; assert_equal( true, @a.include?(1000) ) ; end
|
329
|
-
def test_003A ; assert_equal( true, @a.include?(1000000) ) ; end
|
330
|
-
def test_004A ; assert_equal( true, @a.include?(100000000) ) ; end
|
331
|
-
#def test_005A ; assert_equal( false, @a.include?(INFINITY) ) ; end
|
332
|
-
|
333
|
-
def test_001B ; assert_equal( true, @b.include?(0) ) ; end
|
334
|
-
def test_002B ; assert_equal( true, @b.include?(5) ) ; end
|
335
|
-
def test_002B ; assert_equal( true, @b.include?(70007) ) ; end
|
336
|
-
def test_002B ; assert_equal( true, @b.include?(5000005) ) ; end
|
337
|
-
#def test_002B ; assert_equal( false, @b.include?(INFINITY) ) ; end
|
338
|
-
|
339
|
-
end
|
340
|
-
|
341
|
-
class SelectTest < Test::Unit::TestCase
|
342
|
-
|
343
|
-
def setup
|
344
|
-
@a = Interval.new( 0,10 )
|
345
|
-
end
|
346
|
-
|
347
|
-
def test_001
|
348
|
-
b = @a.collect( 2 ){ |n| n }
|
349
|
-
assert_equal( [0,2,4,6,8,10], b )
|
350
|
-
end
|
351
|
-
|
352
|
-
def test_002
|
353
|
-
b = @a.select{ |n| n % 2 == 0 }
|
354
|
-
assert_equal( [0,2,4,6,8,10], b )
|
355
|
-
end
|
356
|
-
|
357
|
-
def test_003
|
358
|
-
b = @a.collect( 1,2 ){ |n| n }
|
359
|
-
assert_equal( [0,5,10], b )
|
360
|
-
end
|
361
|
-
|
362
|
-
def test_004
|
363
|
-
b = @a.select( 1,2 ){ |n| n % 2 == 0 }
|
364
|
-
assert_equal( [0,10], b )
|
365
|
-
end
|
366
|
-
|
367
|
-
end
|
368
|
-
|
369
|
-
class ArrayTest < Test::Unit::TestCase
|
370
|
-
|
371
|
-
def setup
|
372
|
-
@a = Interval.new( 0,10 )
|
373
|
-
@b = Interval.new( 0,1 )
|
374
|
-
end
|
375
|
-
|
376
|
-
def test_001A ; assert_equal( [0,5,10], @a.to_a(1,2) ) ; end
|
377
|
-
|
378
|
-
def test_001B ; assert_equal( [0, 0.25, 0.5, 0.75, 1.0], @b.to_a(1,4) ) ; end
|
379
|
-
|
380
|
-
end
|
381
|
-
|
382
|
-
=end
|
383
|
-
|
384
|
-
=begin
|
385
|
-
class InfTest < Test::Unit::TestCase
|
386
|
-
|
387
|
-
def setup
|
388
|
-
@a = Interval.new( -INFINITY, -3 )
|
389
|
-
@b = Interval.new( -INFINITY, -3, true, false )
|
390
|
-
@c = Interval.new( -3, INFINITY )
|
391
|
-
@d = Interval.new( -INFINITY, INFINITY )
|
392
|
-
@e = Interval.new( -3, -2 )
|
393
|
-
end
|
394
|
-
|
395
|
-
def test_001A ; assert_equal( true, @a.include?(-INFINITY) ) ; end
|
396
|
-
def test_002A ; assert_equal( true, @a.include?(-4) ) ; end
|
397
|
-
def test_003A ; assert_equal( true, @a.include?(-3) ) ; end
|
398
|
-
def test_004A ; assert_equal( false, @a.include?(-2) ) ; end
|
399
|
-
def test_005A ; assert_equal( false, @a.include?(INFINITY) ) ; end
|
400
|
-
|
401
|
-
def test_001B ; assert_equal( true, @b.include?(-INFINITY) ) ; end
|
402
|
-
def test_002B ; assert_equal( true, @b.include?(-4) ) ; end
|
403
|
-
def test_003B ; assert_equal( false, @b.include?(-3) ) ; end
|
404
|
-
def test_004B ; assert_equal( false, @b.include?(-2) ) ; end
|
405
|
-
def test_005B ; assert_equal( false, @b.include?(INFINITY) ) ; end
|
406
|
-
|
407
|
-
def test_001C ; assert_equal( false, @c.include?(-INFINITY) ) ; end
|
408
|
-
def test_002C ; assert_equal( false, @c.include?(-4) ) ; end
|
409
|
-
def test_003C ; assert_equal( true, @c.include?(-3) ) ; end
|
410
|
-
def test_004C ; assert_equal( true, @c.include?(-2) ) ; end
|
411
|
-
def test_005C ; assert_equal( true, @c.include?(INFINITY) ) ; end
|
412
|
-
|
413
|
-
def test_001D ; assert_equal( true, @d.include?(-INFINITY) ) ; end
|
414
|
-
def test_002D ; assert_equal( true, @d.include?(-4) ) ; end
|
415
|
-
def test_003D ; assert_equal( true, @d.include?(-3) ) ; end
|
416
|
-
def test_004D ; assert_equal( true, @d.include?(-2) ) ; end
|
417
|
-
def test_005D ; assert_equal( true, @d.include?(INFINITY) ) ; end
|
418
|
-
|
419
|
-
def test_001E ; assert_equal( false, @e.include?(-INFINITY) ) ; end
|
420
|
-
def test_002E ; assert_equal( false, @e.include?(-4) ) ; end
|
421
|
-
def test_003E ; assert_equal( true, @e.include?(-3) ) ; end
|
422
|
-
def test_004E ; assert_equal( true, @e.include?(-2) ) ; end
|
423
|
-
def test_005E ; assert_equal( false, @e.include?(INFINITY) ) ; end
|
424
|
-
|
425
|
-
end
|
426
|
-
=end
|
data/lib/mega/ioreactor.rb
DELETED
@@ -1,671 +0,0 @@
|
|
1
|
-
#--
|
2
|
-
# IOReactor
|
3
|
-
#
|
4
|
-
# Copyright (c) 2002, 2003 The FaerieMUD Consortium. All rights reserved.
|
5
|
-
#
|
6
|
-
# Ruby License
|
7
|
-
#
|
8
|
-
# This module is free software. You may use, modify, and/or redistribute this
|
9
|
-
# software under the same terms as Ruby.
|
10
|
-
#
|
11
|
-
# This program is distributed in the hope that it will be useful, but WITHOUT
|
12
|
-
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
13
|
-
# FOR A PARTICULAR PURPOSE.
|
14
|
-
#
|
15
|
-
#
|
16
|
-
# ==========================================================================
|
17
|
-
# Revision History ::
|
18
|
-
# --------------------------------------------------------------------------
|
19
|
-
# 04.12 Trans * Minor modifications to documentation.
|
20
|
-
# ==========================================================================
|
21
|
-
#++
|
22
|
-
|
23
|
-
#:title: IOReactor
|
24
|
-
#
|
25
|
-
# An object-oriented multiplexing asynchronous IO mechanism for Ruby.
|
26
|
-
# It is an implementation of the Reactor design pattern for multiplexed
|
27
|
-
# asynchronous single-thread IO.
|
28
|
-
#
|
29
|
-
# == Details
|
30
|
-
#
|
31
|
-
# This module is a pure-Ruby implementation of an asynchronous multiplexed IO
|
32
|
-
# Reactor which is based on the Reactor design pattern found in _Pattern-Oriented
|
33
|
-
# Software Architecture, Volume 2: Patterns for Concurrent and Networked
|
34
|
-
# Objects_. It allows a single thread to demultiplex and dispatch events from one
|
35
|
-
# or more IO objects to the appropriate handler.
|
36
|
-
#
|
37
|
-
# This module used to be called Ruby-Poll, and used to use the poll(2) system
|
38
|
-
# call, but this strategy was not portable, and didn't work with Ruby's
|
39
|
-
# threads. It now uses IO::select, which should work everywhere Ruby does.
|
40
|
-
#
|
41
|
-
# I would greatly appreciate feedback on any aspect of this software. Suggestions,
|
42
|
-
# feature requests, questions, design critiques, and bug reports are most
|
43
|
-
# welcome. Relevant patches and minimal test cases are particularly helpful. I may
|
44
|
-
# be reached by email at <ged@FaerieMUD.org>.
|
45
|
-
#
|
46
|
-
# == Synopsis
|
47
|
-
#
|
48
|
-
# require 'mega/ioreactor'
|
49
|
-
# require 'socket'
|
50
|
-
#
|
51
|
-
# reactorobj = IOReactor.new
|
52
|
-
#
|
53
|
-
# # Open a listening socket on port 1138 and register it with the
|
54
|
-
# # reactor. When a :read event occurs on it, it means an incoming
|
55
|
-
# # connection has been established
|
56
|
-
# sock = TCPServer::new('localhost', 1138)
|
57
|
-
# reactorobj.register( sock, :read ) {|sock,event|
|
58
|
-
# case event
|
59
|
-
# # Accept the incoming connection, registering it also with
|
60
|
-
# # the reactor; events on client sockets are handled by the
|
61
|
-
# # #clientHandler method.
|
62
|
-
# when :read
|
63
|
-
# clsock = sock.accept
|
64
|
-
# reactorobj.register( clsock, :read, :write, &method(:clientHandler) )
|
65
|
-
# # Errors on the main listening socket cause the whole
|
66
|
-
# # reactor to be shut down
|
67
|
-
# when :error
|
68
|
-
# reactorobj.clear
|
69
|
-
# $stderr.puts "Server error: Shutting down"
|
70
|
-
# else
|
71
|
-
# $stderr.puts "Unhandled event: #{event}"
|
72
|
-
# end
|
73
|
-
# }
|
74
|
-
# # Drive the reactor until it's empty with a single thread
|
75
|
-
# Thread::new { reactorobj.poll until reactorobj.empty? }
|
76
|
-
#
|
77
|
-
# == More Information
|
78
|
-
#
|
79
|
-
# You can find more information about IO-Reactor, including the latest version, at
|
80
|
-
# its project page:
|
81
|
-
#
|
82
|
-
# http://www.devEiate.org/code/IO-Reactor.shtml
|
83
|
-
#
|
84
|
-
# == Author(s)
|
85
|
-
#
|
86
|
-
# * Michael Granger <ged#FaerieMUD.org>
|
87
|
-
#
|
88
|
-
|
89
|
-
require 'delegate'
|
90
|
-
require 'rbconfig'
|
91
|
-
|
92
|
-
### An object-oriented multiplexing asynchronous IO reactor class.
|
93
|
-
class IOReactor
|
94
|
-
|
95
|
-
### Class constants
|
96
|
-
Version = /([\d\.]+)/.match( %q{$Revision: 1.13 $} )[1]
|
97
|
-
Rcsid = %q$Id: reactor.rb,v 1.13 2003/08/04 23:56:14 deveiant Exp $
|
98
|
-
|
99
|
-
ValidEvents = [:read, :write, :error]
|
100
|
-
|
101
|
-
### Create and return a new IO reactor object.
|
102
|
-
def initialize
|
103
|
-
@handles = Hash::new {|hsh,key|
|
104
|
-
hsh[ key ] = {
|
105
|
-
:events => [],
|
106
|
-
:handler => nil,
|
107
|
-
:args => [],
|
108
|
-
}
|
109
|
-
}
|
110
|
-
@pendingEvents = Hash::new {|hsh,key| hsh[ key ] = []}
|
111
|
-
end
|
112
|
-
|
113
|
-
|
114
|
-
######
|
115
|
-
public
|
116
|
-
######
|
117
|
-
|
118
|
-
# The Hash of handles (instances of IO or its subclasses) associated with
|
119
|
-
# the reactor. The keys are the IO objects, and the values are a Hash of
|
120
|
-
# event/s => handler.
|
121
|
-
attr_reader :handles
|
122
|
-
|
123
|
-
# The Hash of unhandled events which occurred in the last call to #poll,
|
124
|
-
# keyed by handle.
|
125
|
-
attr_reader :pendingEvents
|
126
|
-
|
127
|
-
|
128
|
-
### Register the specified IO object with the reactor for events given as
|
129
|
-
### <tt>args</tt>. The reactor will test the given <tt>io</tt> for the
|
130
|
-
### events specified whenever #poll is called. See the #poll method for a
|
131
|
-
### list of valid events. If no events are specified, only <tt>:error</tt>
|
132
|
-
### events will be polled for.
|
133
|
-
###
|
134
|
-
### If a <tt>handler</tt> is specified, it will be called whenever the
|
135
|
-
### <tt>io</tt> has any of the specified <tt>events</tt> occur to it. It
|
136
|
-
### should take at least two parameters: the <tt>io</tt> and the event.
|
137
|
-
###
|
138
|
-
### If +args+ contains any objects except the Symbols '<tt>:read</tt>',
|
139
|
-
### '<tt>:write</tt>', or '<tt>:error</tt>', and a +handler+ is specified,
|
140
|
-
### they will be saved and passed to handler for each event.
|
141
|
-
###
|
142
|
-
### Registering a handle will unregister any previously registered
|
143
|
-
### event/handler+arguments pairs associated with the handle.
|
144
|
-
def register( io, *args, &handler )
|
145
|
-
events = [:read, :write, :error] & args
|
146
|
-
args -= events
|
147
|
-
|
148
|
-
self.unregister( io )
|
149
|
-
self.enableEvents( io, *events )
|
150
|
-
if handler
|
151
|
-
self.setHandler( io, *args, &handler )
|
152
|
-
else
|
153
|
-
self.setArgs( io, *args )
|
154
|
-
end
|
155
|
-
|
156
|
-
return self
|
157
|
-
end
|
158
|
-
alias_method :add, :register
|
159
|
-
|
160
|
-
|
161
|
-
### Add the specified +events+ to the list that will be polled for on the
|
162
|
-
### given +io+ handle.
|
163
|
-
def enableEvents( io, *events )
|
164
|
-
@handles[ io ][:events] |= events
|
165
|
-
end
|
166
|
-
|
167
|
-
|
168
|
-
### Remove the specified +events+ from the list that will be polled for on
|
169
|
-
### the given +io+ handle.
|
170
|
-
def disableEvents( io, *events )
|
171
|
-
raise RuntimeError, "Cannot disable the :error event" if
|
172
|
-
events.include?( :error )
|
173
|
-
@handles[ io ][:events] -= events
|
174
|
-
end
|
175
|
-
|
176
|
-
|
177
|
-
### Set the handler for events on the given +io+ handle to the specified
|
178
|
-
### +handler+. If any +args+ are present, they will be passed as an exploded
|
179
|
-
### array to the handler for each event. Returns the previously-registered
|
180
|
-
### handler, if any.
|
181
|
-
def setHandler( io, *args, &handler )
|
182
|
-
rval = @handles[ io ][:handler]
|
183
|
-
@handles[ io ][:handler] = handler
|
184
|
-
self.setArgs( io, *args )
|
185
|
-
return rval
|
186
|
-
end
|
187
|
-
|
188
|
-
|
189
|
-
### Remove and return the handler for events on the given +io+ handle.
|
190
|
-
def removeHandler( io )
|
191
|
-
rval = @handles[ io ][:handler]
|
192
|
-
@handles[ io ][:handler] = nil
|
193
|
-
self.removeArgs( io )
|
194
|
-
return rval
|
195
|
-
end
|
196
|
-
|
197
|
-
|
198
|
-
### Set the additional arguments to pass to the handler for the given +io+
|
199
|
-
### handle on each event to the given +args+.
|
200
|
-
def setArgs( io, *args )
|
201
|
-
rval = @handles[ io ][:args]
|
202
|
-
@handles[ io ][:args] = args
|
203
|
-
return rval
|
204
|
-
end
|
205
|
-
|
206
|
-
|
207
|
-
### Remove the arguments for the given handle to the given +args+.
|
208
|
-
def removeArgs( io )
|
209
|
-
return @handles[ io ][:args].clear
|
210
|
-
end
|
211
|
-
|
212
|
-
|
213
|
-
### Remove the specified <tt>io</tt> from the receiver's list of registered
|
214
|
-
### handles, if present. Returns the handle if it was registered, or
|
215
|
-
### <tt>nil</tt> if it was not.
|
216
|
-
def unregister( io )
|
217
|
-
@pendingEvents.delete( io )
|
218
|
-
@handles.delete( io )
|
219
|
-
end
|
220
|
-
alias_method :remove, :unregister
|
221
|
-
|
222
|
-
|
223
|
-
### Returns true if the specified <tt>io</tt> is registered with the poll
|
224
|
-
### object.
|
225
|
-
def registered?( io )
|
226
|
-
return @handles.has_key?( io )
|
227
|
-
end
|
228
|
-
|
229
|
-
|
230
|
-
### Clear all registered handles from the poll object. Returns the handles
|
231
|
-
### that were cleared.
|
232
|
-
def clear
|
233
|
-
rv = @handles.keys
|
234
|
-
|
235
|
-
@pendingEvents.clear
|
236
|
-
@handles.clear
|
237
|
-
|
238
|
-
return rv
|
239
|
-
end
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
### Poll the handles registered to the reactor for pending events. The
|
244
|
-
### following event types are defined:
|
245
|
-
###
|
246
|
-
### [<tt>:read</tt>]
|
247
|
-
### Data may be read from the handle without blocking.
|
248
|
-
### [<tt>:write</tt>]
|
249
|
-
### Data may be written to the handle without blocking.
|
250
|
-
### [<tt>:error</tt>]
|
251
|
-
### An error has occurred on the handle. This event type is always
|
252
|
-
### enabled, regardless of whether or not it is passed as one of the
|
253
|
-
### <tt>events</tt>.
|
254
|
-
###
|
255
|
-
### Any handlers specified when the handles were registered are run for
|
256
|
-
### those handles with events. If a block is given, it will be invoked once
|
257
|
-
### for each handle which doesn't have an explicit handler. If no block is
|
258
|
-
### given, events without explicit handlers are inserted into the reactor's
|
259
|
-
### <tt>pendingEvents</tt> attribute.
|
260
|
-
###
|
261
|
-
### The <tt>timeout</tt> argument is the number of floating-point seconds to
|
262
|
-
### wait for an event before returning (ie., fourth argument to the
|
263
|
-
### underlying <tt>select()</tt> call); negative timeout values will cause
|
264
|
-
### #poll to block until there is at least one event to report.
|
265
|
-
###
|
266
|
-
### This method returns the number of handles on which one or more events
|
267
|
-
### occurred.
|
268
|
-
def poll( timeout=-1 ) # :yields: io, eventMask
|
269
|
-
timeout = timeout.to_f
|
270
|
-
@pendingEvents.clear
|
271
|
-
count = 0
|
272
|
-
|
273
|
-
unless @handles.empty?
|
274
|
-
timeout = nil if timeout < 0
|
275
|
-
eventedHandles = self.getPendingEvents( timeout )
|
276
|
-
|
277
|
-
# For each event of each io that had an event happen, call any
|
278
|
-
# associated callback, or any provided block, or failing both of
|
279
|
-
# those, add the event to the hash of unhandled pending events.
|
280
|
-
eventedHandles.each {|io,events|
|
281
|
-
count += 1
|
282
|
-
events.each {|ev|
|
283
|
-
args = @handles[ io ][:args]
|
284
|
-
|
285
|
-
if @handles[ io ][:handler]
|
286
|
-
@handles[ io ][:handler].call( io, ev, *args )
|
287
|
-
elsif block_given?
|
288
|
-
yield( io, ev, *args )
|
289
|
-
else
|
290
|
-
@pendingEvents[io].push( ev )
|
291
|
-
end
|
292
|
-
}
|
293
|
-
}
|
294
|
-
end
|
295
|
-
|
296
|
-
return count
|
297
|
-
end
|
298
|
-
|
299
|
-
|
300
|
-
### Returns <tt>true</tt> if no handles are associated with the receiver.
|
301
|
-
def empty?
|
302
|
-
@handles.empty?
|
303
|
-
end
|
304
|
-
|
305
|
-
|
306
|
-
#########
|
307
|
-
protected
|
308
|
-
#########
|
309
|
-
|
310
|
-
### Select on the registered handles, returning a Hash of handles => events
|
311
|
-
### for handles which had events occur.
|
312
|
-
def getPendingEvents( timeout )
|
313
|
-
eventHandles = IO::select( self.getReadHandles, self.getWriteHandles,
|
314
|
-
@handles.keys, timeout ) or return {}
|
315
|
-
eventHash = Hash::new {|hsh,io| hsh[io] = []}
|
316
|
-
|
317
|
-
# Fill in the hash with pending events of each type
|
318
|
-
[:read, :write, :error].each_with_index {|event,i|
|
319
|
-
eventHandles[i].each {|io| eventHash[io].push( event )}
|
320
|
-
}
|
321
|
-
return eventHash
|
322
|
-
end
|
323
|
-
|
324
|
-
|
325
|
-
### Return an Array of handles which have handlers for the <tt>:read</tt>
|
326
|
-
### event.
|
327
|
-
def getReadHandles
|
328
|
-
@handles.
|
329
|
-
find_all {|io,hsh| hsh[:events].include?( :read )}.
|
330
|
-
collect {|io,hsh| io}
|
331
|
-
end
|
332
|
-
|
333
|
-
|
334
|
-
### Return an Array of handles which have handlers for the <tt>:write</tt>
|
335
|
-
### event.
|
336
|
-
def getWriteHandles
|
337
|
-
@handles.
|
338
|
-
find_all {|io,hsh| hsh[:events].include?( :write )}.
|
339
|
-
collect {|io,hsh| io}
|
340
|
-
end
|
341
|
-
|
342
|
-
|
343
|
-
end # class IO::Reactor
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
=begin
|
348
|
-
|
349
|
-
== ChangeLog
|
350
|
-
|
351
|
-
* 2003-07-21 09:04 Michael Granger <ged@FaerieMUD.org>
|
352
|
-
|
353
|
-
* README (1.5, RELEASE_0_04):
|
354
|
-
|
355
|
-
- Changed to IO::Reactor.
|
356
|
-
|
357
|
-
* 2003-07-21 08:21 Michael Granger <ged@FaerieMUD.org>
|
358
|
-
|
359
|
-
* install.rb (1.1, RELEASE_0_04):
|
360
|
-
|
361
|
-
Initial checkin.
|
362
|
-
|
363
|
-
* 2003-07-21 00:55 Michael Granger <ged@FaerieMUD.org>
|
364
|
-
|
365
|
-
* test.rb (1.7), utils.rb (1.4), examples/chatserver.rb (1.3),
|
366
|
-
lib/io/reactor.rb (1.11), CATALOG (1.2) (utags: RELEASE_0_04):
|
367
|
-
|
368
|
-
- Refactored into IO::Reactor from Ruby-Poll.
|
369
|
-
|
370
|
-
* 2003-07-21 00:54 Michael Granger <ged@FaerieMUD.org>
|
371
|
-
|
372
|
-
* extconf.rb (1.6), poll.c (1.6), lib/poll.rb (1.11):
|
373
|
-
|
374
|
-
- Removed for IO::Reactor, which no longer needs a C backend.
|
375
|
-
|
376
|
-
* 2003-05-08 16:49 Michael Granger <ged@FaerieMUD.org>
|
377
|
-
|
378
|
-
* makesitedocs.rb (1.3, RELEASE_0_04):
|
379
|
-
|
380
|
-
makesitedocs.rb
|
381
|
-
|
382
|
-
* 2003-04-20 22:37 Michael Granger <ged@FaerieMUD.org>
|
383
|
-
|
384
|
-
* test.rb (1.6):
|
385
|
-
|
386
|
-
Added workaround for recent versions of Test::Unit's API changes.
|
387
|
-
|
388
|
-
* 2003-04-20 22:34 Michael Granger <ged@FaerieMUD.org>
|
389
|
-
|
390
|
-
* poll.c (1.5):
|
391
|
-
|
392
|
-
Added code for simulating poll(2) with rb_thread_select() for machines without a native poll(). Based on code for Freehaven by
|
393
|
-
Nick Mathewson <nickm@freehaven.net>.
|
394
|
-
|
395
|
-
* 2003-04-20 22:32 Michael Granger <ged@FaerieMUD.org>
|
396
|
-
|
397
|
-
* extconf.rb (1.5):
|
398
|
-
|
399
|
-
Added fake poll code to allow machines without a poll(2) to use the library. This also might become the primary method of polling, sadly, as Ruby doesn't tolerate other async IO methods very well due to its use of select() for its threading.
|
400
|
-
|
401
|
-
* 2002-10-20 21:47 Michael Granger <ged@FaerieMUD.org>
|
402
|
-
|
403
|
-
* lib/: poll.rb (1.10), io/reactor.rb (1.10) (utags: RELEASE_0_03):
|
404
|
-
|
405
|
-
- Got rid of a type-checking statement, as it didn't account for using an IO
|
406
|
-
inside a wrappered or delegated object.
|
407
|
-
|
408
|
-
- Fixed use of deprecated 'type' method.
|
409
|
-
|
410
|
-
* 2002-09-18 06:33 Michael Granger <ged@FaerieMUD.org>
|
411
|
-
|
412
|
-
* makedocs.rb (1.3, RELEASE_0_04, RELEASE_0_03, RELEASE_0_02):
|
413
|
-
|
414
|
-
- Removed dependence on as-yet-undistributed xhtml RDoc template.
|
415
|
-
|
416
|
-
* 2002-09-06 10:52 Michael Granger <ged@FaerieMUD.org>
|
417
|
-
|
418
|
-
* poll.c (1.4, RELEASE_0_03, RELEASE_0_02):
|
419
|
-
|
420
|
-
- Added interrupt-handling to the _poll call.
|
421
|
-
|
422
|
-
- Added more-informative debugging.
|
423
|
-
|
424
|
-
* 2002-07-20 10:07 Michael Granger <ged@FaerieMUD.org>
|
425
|
-
|
426
|
-
* lib/: poll.rb (1.9), io/reactor.rb (1.9) (utags: RELEASE_0_02):
|
427
|
-
|
428
|
-
- New method: #setMask().
|
429
|
-
|
430
|
-
- New method: #callback().
|
431
|
-
|
432
|
-
- New method: #args().
|
433
|
-
|
434
|
-
- Implemented the #register() method in terms of the other setter methods to
|
435
|
-
consolidate the maintenance of internal data structures.
|
436
|
-
|
437
|
-
- Added missing callback *args to #setCallback().
|
438
|
-
|
439
|
-
- Cleared up documentation for #register.
|
440
|
-
|
441
|
-
* 2002-07-20 10:03 Michael Granger <ged@FaerieMUD.org>
|
442
|
-
|
443
|
-
* examples/chatserver.rb (1.2, RELEASE_0_03, RELEASE_0_02):
|
444
|
-
|
445
|
-
- Changed name of user class to 'User' to avoid confusion about its role in the
|
446
|
-
server.
|
447
|
-
|
448
|
-
* 2002-07-20 10:01 Michael Granger <ged@FaerieMUD.org>
|
449
|
-
|
450
|
-
* test.rb (1.5, RELEASE_0_03, RELEASE_0_02):
|
451
|
-
|
452
|
-
- Added test for the #callback method.
|
453
|
-
|
454
|
-
* 2002-07-20 10:01 Michael Granger <ged@FaerieMUD.org>
|
455
|
-
|
456
|
-
* makedocs.rb (1.2):
|
457
|
-
|
458
|
-
- Added template argument to make it use the xhtml template.
|
459
|
-
|
460
|
-
* 2002-07-19 10:29 Michael Granger <ged@FaerieMUD.org>
|
461
|
-
|
462
|
-
* lib/: poll.rb (1.8), io/reactor.rb (1.8):
|
463
|
-
|
464
|
-
- Fixed a funny typo.
|
465
|
-
|
466
|
-
* 2002-07-18 21:58 Michael Granger <ged@FaerieMUD.org>
|
467
|
-
|
468
|
-
* CATALOG (1.1, RELEASE_0_03, RELEASE_0_02):
|
469
|
-
|
470
|
-
Initial commit.
|
471
|
-
|
472
|
-
* 2002-07-18 21:58 Michael Granger <ged@FaerieMUD.org>
|
473
|
-
|
474
|
-
* utils.rb (1.3, RELEASE_0_03, RELEASE_0_02):
|
475
|
-
|
476
|
-
- Fixed typo in vetManifest()
|
477
|
-
|
478
|
-
- Added case to read the documentation CATALOG in the base directory if it's not
|
479
|
-
in the docs/ directory.
|
480
|
-
|
481
|
-
* 2002-07-18 21:55 Michael Granger <ged@FaerieMUD.org>
|
482
|
-
|
483
|
-
* makesitedocs.rb (1.2, RELEASE_0_03, RELEASE_0_02):
|
484
|
-
|
485
|
-
- Merged some of the features from the MUES doc-gen script.
|
486
|
-
|
487
|
-
* 2002-07-18 21:52 Michael Granger <ged@FaerieMUD.org>
|
488
|
-
|
489
|
-
* lib/: poll.rb (1.7), io/reactor.rb (1.7):
|
490
|
-
|
491
|
-
- Added callback arguments to the register() method.
|
492
|
-
|
493
|
-
* 2002-07-18 21:52 Michael Granger <ged@FaerieMUD.org>
|
494
|
-
|
495
|
-
* test.rb (1.4):
|
496
|
-
|
497
|
-
- Added test for new "with-args" register() method call.
|
498
|
-
|
499
|
-
* 2002-07-18 09:42 Michael Granger <ged@FaerieMUD.org>
|
500
|
-
|
501
|
-
* utils.rb (1.2):
|
502
|
-
|
503
|
-
- Added a debugMsg function.
|
504
|
-
|
505
|
-
- Qualified all functions as module_functions.
|
506
|
-
|
507
|
-
* 2002-07-18 09:40 Michael Granger <ged@FaerieMUD.org>
|
508
|
-
|
509
|
-
* lib/: poll.rb (1.6), io/reactor.rb (1.6):
|
510
|
-
|
511
|
-
- Fixed some typos
|
512
|
-
|
513
|
-
- Added clarification and additional documentation for some methods.
|
514
|
-
|
515
|
-
* 2002-07-18 09:35 Michael Granger <ged@FaerieMUD.org>
|
516
|
-
|
517
|
-
* README (1.4, RELEASE_0_03, RELEASE_0_02):
|
518
|
-
|
519
|
-
- Fixed a typo.
|
520
|
-
|
521
|
-
* 2002-04-18 16:53 Michael Granger <ged@FaerieMUD.org>
|
522
|
-
|
523
|
-
* extconf.rb (1.4, RELEASE_0_03, RELEASE_0_02):
|
524
|
-
|
525
|
-
- Corrected a bug in the header =:)
|
526
|
-
|
527
|
-
* 2002-04-18 12:01 Michael Granger <ged@FaerieMUD.org>
|
528
|
-
|
529
|
-
* makedist.rb (1.1, RELEASE_0_04, RELEASE_0_03, RELEASE_0_02),
|
530
|
-
makesitedocs.rb (1.1), utils.rb (1.1) (utags: RELEASE_0_01):
|
531
|
-
|
532
|
-
Initial commit
|
533
|
-
|
534
|
-
* 2002-04-18 11:24 Michael Granger <ged@FaerieMUD.org>
|
535
|
-
|
536
|
-
* extconf.rb (1.3, RELEASE_0_01):
|
537
|
-
|
538
|
-
- Corrected path to the docs-generation script.
|
539
|
-
|
540
|
-
* 2002-04-18 10:23 Michael Granger <ged@FaerieMUD.org>
|
541
|
-
|
542
|
-
* makedocs.rb (1.1, RELEASE_0_01):
|
543
|
-
|
544
|
-
Initial commit
|
545
|
-
|
546
|
-
* 2002-04-18 10:23 Michael Granger <ged@FaerieMUD.org>
|
547
|
-
|
548
|
-
* poll.c (1.3, RELEASE_0_01):
|
549
|
-
|
550
|
-
- Added some comments for RDoc, should it ever parse protected methods.
|
551
|
-
|
552
|
-
- Changed the name of the second arg to _poll() to handleArray, as it wasn't
|
553
|
-
really an array of file descriptors.
|
554
|
-
|
555
|
-
* 2002-04-18 08:44 Michael Granger <ged@FaerieMUD.org>
|
556
|
-
|
557
|
-
* test.rb (1.3, RELEASE_0_01):
|
558
|
-
|
559
|
-
- Removed the "ext" dir from the ones being added to the LOAD_PATH, as it's gone
|
560
|
-
away.
|
561
|
-
|
562
|
-
- Removed a require left over from the failed tempfile experiment.
|
563
|
-
|
564
|
-
* 2002-04-18 08:43 Michael Granger <ged@FaerieMUD.org>
|
565
|
-
|
566
|
-
* extconf.rb (1.2):
|
567
|
-
|
568
|
-
- Moved the ext/extconf.rb stuff into this one because the ext directory is
|
569
|
-
going away.
|
570
|
-
|
571
|
-
* 2002-04-18 08:42 Michael Granger <ged@FaerieMUD.org>
|
572
|
-
|
573
|
-
* README (1.3, RELEASE_0_01):
|
574
|
-
|
575
|
-
- Changed from alpha to beta
|
576
|
-
|
577
|
-
- Added requirements section
|
578
|
-
|
579
|
-
- Modified installation section to use 'site-install' instead of 'install', and
|
580
|
-
took stuff out that would have been redundant with the requires section.
|
581
|
-
|
582
|
-
* 2002-04-17 15:34 Michael Granger <ged@FaerieMUD.org>
|
583
|
-
|
584
|
-
* lib/: poll.rb (1.5), io/reactor.rb (1.5) (utags: RELEASE_0_01):
|
585
|
-
|
586
|
-
- Added :yeilds: RDoc construct to #poll.
|
587
|
-
|
588
|
-
* 2002-04-17 15:20 Michael Granger <ged@FaerieMUD.org>
|
589
|
-
|
590
|
-
* README (1.2):
|
591
|
-
|
592
|
-
- Separated abstract from header.
|
593
|
-
|
594
|
-
* 2002-04-17 15:18 Michael Granger <ged@FaerieMUD.org>
|
595
|
-
|
596
|
-
* lib/: poll.rb (1.4), io/reactor.rb (1.4):
|
597
|
-
|
598
|
-
- Clarified abstract.
|
599
|
-
|
600
|
-
* 2002-04-17 15:14 Michael Granger <ged@FaerieMUD.org>
|
601
|
-
|
602
|
-
* README (1.1):
|
603
|
-
|
604
|
-
Initial commit
|
605
|
-
|
606
|
-
* 2002-04-17 07:03 Michael Granger <ged@FaerieMUD.org>
|
607
|
-
|
608
|
-
* lib/: poll.rb (1.3), io/reactor.rb (1.3):
|
609
|
-
|
610
|
-
- Fixed documentation for the EventMask bitwise operators.
|
611
|
-
|
612
|
-
* 2002-04-17 06:48 Michael Granger <ged@FaerieMUD.org>
|
613
|
-
|
614
|
-
* lib/: poll.rb (1.2), io/reactor.rb (1.2):
|
615
|
-
|
616
|
-
- Re-implemented after the first one was wiped out by extconf.
|
617
|
-
|
618
|
-
* 2002-04-17 06:47 Michael Granger <ged@FaerieMUD.org>
|
619
|
-
|
620
|
-
* poll.c (1.2):
|
621
|
-
|
622
|
-
- Added shortcut constants
|
623
|
-
|
624
|
-
- Added _GNU_SOURCE define to catch the additional poll.h constants under Linux
|
625
|
-
|
626
|
-
- Changed _poll to a protected method.
|
627
|
-
|
628
|
-
* 2002-04-17 06:46 Michael Granger <ged@FaerieMUD.org>
|
629
|
-
|
630
|
-
* test.rb (1.2):
|
631
|
-
|
632
|
-
- Added lots of stuff, redesigned to match the new API
|
633
|
-
|
634
|
-
* 2002-04-17 06:45 Michael Granger <ged@FaerieMUD.org>
|
635
|
-
|
636
|
-
* examples/chatserver.rb (1.1, RELEASE_0_01):
|
637
|
-
|
638
|
-
Initial commit
|
639
|
-
|
640
|
-
* 2002-04-16 04:47 Michael Granger <ged@FaerieMUD.org>
|
641
|
-
|
642
|
-
* extconf.rb (1.1), poll.c (1.1), test.rb (1.1), lib/poll.rb (1.1),
|
643
|
-
lib/io/reactor.rb (1.1):
|
644
|
-
|
645
|
-
Initial revision
|
646
|
-
|
647
|
-
* 2002-04-16 04:47 Michael Granger <ged@FaerieMUD.org>
|
648
|
-
|
649
|
-
* extconf.rb (1.1.1.1), poll.c (1.1.1.1), test.rb (1.1.1.1),
|
650
|
-
lib/poll.rb (1.1.1.1), lib/io/reactor.rb (1.1.1.1) (utags: IMPORT):
|
651
|
-
|
652
|
-
Initial import
|
653
|
-
|
654
|
-
=end
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
# _____ _
|
659
|
-
# |_ _|__ ___| |_
|
660
|
-
# | |/ _ \/ __| __|
|
661
|
-
# | | __/\__ \ |_
|
662
|
-
# |_|\___||___/\__|
|
663
|
-
#
|
664
|
-
|
665
|
-
# TODO
|
666
|
-
|
667
|
-
=begin #testing
|
668
|
-
|
669
|
-
require 'test/unit'
|
670
|
-
|
671
|
-
=end
|