mack-facets 0.8.1 → 0.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/gems.rb +25 -0
- data/lib/gems/english-0.3.1/VERSION +1 -0
- data/lib/gems/english-0.3.1/lib/english/array.rb +48 -0
- data/lib/gems/english-0.3.1/lib/english/censor.rb +76 -0
- data/lib/gems/english-0.3.1/lib/english/double_metaphone.rb +353 -0
- data/lib/gems/english-0.3.1/lib/english/dresner.rb +47 -0
- data/lib/gems/english-0.3.1/lib/english/inflect.rb +299 -0
- data/lib/gems/english-0.3.1/lib/english/jumble.rb +37 -0
- data/lib/gems/english-0.3.1/lib/english/levenshtein.rb +78 -0
- data/lib/gems/english-0.3.1/lib/english/metaphone.rb +110 -0
- data/lib/gems/english-0.3.1/lib/english/numerals.rb +71 -0
- data/lib/gems/english-0.3.1/lib/english/patterns.rb +49 -0
- data/lib/gems/english-0.3.1/lib/english/porter_stemming.rb +188 -0
- data/lib/gems/english-0.3.1/lib/english/roman.rb +174 -0
- data/lib/gems/english-0.3.1/lib/english/similarity.rb +103 -0
- data/lib/gems/english-0.3.1/lib/english/soundex.rb +70 -0
- data/lib/gems/english-0.3.1/lib/english/string.rb +210 -0
- data/lib/gems/english-0.3.1/lib/english/style.rb +294 -0
- data/lib/gems/english-0.3.1/lib/english/style_orm.rb +143 -0
- data/lib/gems/english-0.3.1/lib/english/textfilter.rb +91 -0
- data/lib/gems/extlib-0.9.8/lib/extlib.rb +56 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/assertions.rb +8 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/blank.rb +59 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/boolean.rb +11 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/class.rb +175 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/datetime.rb +9 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/dictionary.rb +433 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/hash.rb +419 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/hook.rb +366 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/inflection.rb +435 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/lazy_array.rb +106 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/logger.rb +202 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/mash.rb +148 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/module.rb +41 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/nil.rb +5 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/numeric.rb +5 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/object.rb +175 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/object_space.rb +13 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/pathname.rb +5 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/pooling.rb +239 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/rubygems.rb +38 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/simple_set.rb +39 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/string.rb +132 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/struct.rb +8 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/symbol.rb +17 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/tasks/release.rb +15 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/time.rb +19 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/version.rb +3 -0
- data/lib/gems/extlib-0.9.8/lib/extlib/virtual_file.rb +10 -0
- data/lib/gems/facets-2.4.5/VERSION +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets-live.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets-load.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets.rb +11 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/combination.rb +59 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/conjoin.rb +58 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/delete.rb +61 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/index.rb +48 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/indexable.rb +73 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/merge.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/not_empty.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/only.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/pad.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/permutation.rb +30 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/product.rb +57 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/recursively.rb +30 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/rotate.rb +42 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/select.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/splice.rb +30 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/stackable.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/array/traverse.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/binding.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/binding/caller.rb +54 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/binding/defined.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/binding/eval.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/binding/local_variables.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/binding/self.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/bitmask.rb +104 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/blank.rb +60 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/boolean.rb +156 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/callstack.rb +52 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/cattr.rb +2 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/cattr.rb +115 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/cattr_accessor.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/cattr_reader.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/cattr_writer.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/descendents.rb +36 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/methodize.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/pathize.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/prepend.rb +50 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/subclasses.rb +2 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/class/to_proc.rb +42 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/comparable.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/comparable/bound.rb +65 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/comparable/cmp.rb +38 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/comparable/comparable.rb +42 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/dir.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/dir/ascend.rb +59 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/dir/descend.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/dir/multiglob.rb +92 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/dir/parent.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/dir/recurse.rb +29 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/accumulate.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/cluster_by.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/collect.rb +54 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/commonality.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/count.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/divide.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/duplicates.rb +38 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/each_by.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/entropy.rb +37 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/frequency.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/group_by.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/inject.rb +31 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/map_send.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/mash.rb +32 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/mode.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/modulate.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/none.rb +31 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/occur.rb +38 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/one.rb +38 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/probability.rb +36 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/split.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/sum.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/enumerable/uniq_by.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/exception.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/exception/detail.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/exception/suppress.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/append.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/create.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/null.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/read.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/rewrite.rb +88 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/rootname.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/split_root.rb +10 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/write.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/file/writelines.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/filetest.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/filetest/root.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/float.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/float/round.rb +2 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/functor.rb +77 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/alias.rb +31 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/argumentize.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/at.rb +8 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/autonew.rb +42 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/collate.rb +45 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/delete.rb +47 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/diff.rb +11 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/except.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/insert.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/inverse.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/join.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/keys.rb +45 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/mash.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/merge.rb +30 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op.rb +7 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op_add.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op_and.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op_mul.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op_or.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op_push.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/op_sub.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/recursive_merge.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/recursively.rb +29 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/rekey.rb +59 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/select.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/slice.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/swap.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/to_h.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/to_proc.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/to_struct.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/traverse.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/update.rb +81 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/weave.rb +81 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/hash/zipnew.rb +2 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/indexable.rb +251 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer/even.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer/factorial.rb +30 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer/multiple.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer/odd.rb +35 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer/of.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/integer/ordinal.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/__callee__.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/__class__.rb +9 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/__dir__.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/__get__.rb +10 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/__method__.rb +36 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/__set__.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/as.rb +100 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/ask.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/attr_singleton.rb +62 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/complete.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/constant.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/d.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/deep_copy.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/demo.rb +23 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/ergo.rb +42 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/here.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/in.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/instance.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/instance_assign.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/instance_class.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/instance_exec.rb +40 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/instance_send.rb +7 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/instance_variables.rb +99 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/maybe.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/not_nil.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/object_class.rb +10 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/object_hexid.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/object_send.rb +32 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/p.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/populate.rb +73 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/qua_class.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/require_all.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/require_local.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/resc.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/respond.rb +23 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/returning.rb +23 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/silence.rb +75 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/singleton_class.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/tap.rb +32 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/try.rb +23 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/val.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/kernel/with.rb +20 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/lazy.rb +238 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/matchdata.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/matchdata/match.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/matchdata/matchset.rb +44 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/metaid.rb +94 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/abstract.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/alias_accessor.rb +45 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/alias_method_chain.rb +50 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/alias_module_function.rb +30 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/ancestor.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/basename.rb +31 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/can.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/class.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/conflict.rb +63 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/include_function_module.rb +25 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/instance_methods.rb +40 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/integrate.rb +2 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/is.rb +57 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/methodize.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/modspace.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/module_load.rb +56 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/nesting.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/op.rb +95 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/pathize.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/prepend.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/redefine_method.rb +35 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/redirect_method.rb +45 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/rename_method.rb +20 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/revise.rb +62 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/spacename.rb +25 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/module/wrap_method.rb +28 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/nilclass.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/nilclass/ergo.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/nilclass/to_f.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/numeric.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/numeric/approx.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/numeric/distance.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/numeric/round.rb +72 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/proc.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/proc/bind.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/proc/compose.rb +42 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/proc/curry.rb +31 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/proc/to_method.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/proc/update.rb +9 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/range.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/range/combine.rb +47 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/range/overlap.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/range/to_r.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/range/umbrella.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/range/within.rb +66 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/regexp.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/regexp/arity.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/regexp/to_re.rb +28 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/stackable.rb +86 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/align.rb +106 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/bracket.rb +105 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/bytes.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/camelcase.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/capitalized.rb +46 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/chars.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/chomp.rb +33 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/cleave.rb +36 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/divide.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/each_char.rb +29 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/each_word.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/end_with.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/fold.rb +39 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/interpolate.rb +20 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/line_wrap.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/lines.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/methodize.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/modulize.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/mscan.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/natcmp.rb +88 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/nchar.rb +28 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/op_sub.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/pathize.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/range.rb +77 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/rewrite.rb +28 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/shatter.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/snakecase.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/splice.rb +37 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/start_with.rb +32 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/subtract.rb +4 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/tab.rb +103 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/titlecase.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/to_re.rb +26 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/variablize.rb +13 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/word_wrap.rb +34 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/words.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/string/xor.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/chomp.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/generate.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/not.rb +29 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/plain.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/query.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/re_s.rb +18 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/setter.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/succ.rb +19 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/to_proc.rb +38 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/symbol/variablize.rb +12 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/advance.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/ago.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/change.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/elapse.rb +16 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/hence.rb +94 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/round.rb +17 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/set.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/stamp.rb +44 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/to_time.rb +21 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/time/trunc.rb +15 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/to_hash.rb +87 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/unboundmethod.rb +6 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/unboundmethod/arguments.rb +44 -0
- data/lib/gems/facets-2.4.5/lib/core/facets/unboundmethod/name.rb +25 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/basicobject.rb +14 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/cgi.rb +50 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/continuation.rb +57 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/date.rb +396 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/head.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/safe_ln.rb +28 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/slice.rb +141 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/tail.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/wc.rb +114 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/whereis.rb +64 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/fileutils/which.rb +101 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/getoptlong.rb +71 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/logger.rb +291 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/ostruct.rb +238 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/pathname.rb +172 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/rbconfig.rb +45 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/set.rb +27 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/shellwords.rb +89 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/uri.rb +249 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/yaml.rb +75 -0
- data/lib/gems/facets-2.4.5/lib/lore/facets/zlib.rb +38 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/1stclassmethod.rb +140 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/advisable.rb +162 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/annotations.rb +302 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/ansicode.rb +315 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/arguments.rb +365 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/argvector.rb +353 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/association.rb +194 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/attr.rb +208 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/autoarray.rb +62 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/autoreload.rb +150 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/basex.rb +37 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/bbcode.rb +397 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/bicrypt.rb +265 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/binding/opvars.rb +24 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/binreadable.rb +221 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/blankslate.rb +66 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/buildable.rb +344 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/bytes.rb +175 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/cachedecorator.rb +117 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/capsule.rb +258 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/chain.rb +58 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/class_extension.rb +114 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/classmethods.rb +199 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/cloneable.rb +76 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/command.rb +439 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/consoleutils.rb +113 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/coroutine.rb +159 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/crypt.rb +166 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/cssfilter.rb +254 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/daemonize.rb +44 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/dependency.rb +151 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/dictionary.rb +478 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/dictionarymatcher.rb +136 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/downloader.rb +281 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/duplicable.rb +43 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/duration.rb +540 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/elementor.rb +133 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/elementwise.rb +61 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/enumerablepass.rb +217 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/equatable.rb +120 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/eventhook.rb +132 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/expirable.rb +82 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/fileable.rb +162 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/filelist.rb +497 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/fileshell.rb +202 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/hash/stringify_keys.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/hash/symbolize_keys.rb +94 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/heap.rb +22 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/htmlfilter.rb +595 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/infinity.rb +193 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/inheritor.rb +130 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/ini.rb +264 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/instantiable.rb +47 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/instantise.rb +1 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/instantize.rb +95 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/interval.rb +282 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/ioredirect.rb +130 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/iteration.rb +65 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/kernel/meta.rb +32 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/linkedlist.rb +222 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/lrucache.rb +157 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/main.rb +70 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/memoize.rb +116 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/methodspace.rb +141 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/minitar.rb +1063 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/multipliers.rb +109 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/multiton.rb +386 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/nackclass.rb +41 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/net/smtp_tls.rb +131 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/nilstatus.rb +47 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/nullclass.rb +74 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/opencascade.rb +94 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/opencollection.rb +43 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/openhash.rb +39 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/openobject.rb +267 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/opesc.rb +60 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/orderedhash.rb +37 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/overload.rb +94 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/paramix.rb +202 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/partial.rb +37 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/pathlist.rb +112 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/platform.rb +192 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/pool.rb +91 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/pqueue.rb +449 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/progressbar.rb +253 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/prototype.rb +88 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/random.rb +451 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/rbsystem.rb +222 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/recorder.rb +109 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/reference.rb +99 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/reflection.rb +145 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/registerable.rb +35 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/rwdelegator.rb +74 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/semaphore.rb +92 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/settings.rb +248 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/snapshot.rb +209 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/string/mask.rb +278 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/string/words.rb +173 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/succ.rb +44 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/syncarray.rb +114 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/synchash.rb +157 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/tagiter.rb +366 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/thread.rb +51 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/timer.rb +274 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/times.rb +431 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/tracepoint.rb +209 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/tuple.rb +325 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/typecast.rb +261 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/uninheritable.rb +50 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/uploadutils.rb +464 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/version.rb +136 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/xmlhash.rb +112 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/xoxo.rb +259 -0
- data/lib/gems/facets-2.4.5/lib/more/facets/ziputils.rb +349 -0
- data/lib/mack-facets.rb +4 -2
- data/lib/mack-facets/english_extensions/inflect.rb +50 -50
- data/lib/mack-facets/extensions/string.rb +10 -1
- data/lib/mack-facets/utils/inflections.rb +50 -47
- data/lib/mack-facets/utils/inflector.rb +19 -19
- metadata +547 -36
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
require 'facets/binding/eval'
|
|
2
|
+
|
|
3
|
+
class Binding
|
|
4
|
+
|
|
5
|
+
# Returns the value of some variable.
|
|
6
|
+
#
|
|
7
|
+
# a = 2
|
|
8
|
+
# binding["a"] #=> 2
|
|
9
|
+
#
|
|
10
|
+
def []( x )
|
|
11
|
+
eval( x.to_s )
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Set the value of a local variable.
|
|
15
|
+
#
|
|
16
|
+
# binding["a"] = 4
|
|
17
|
+
# a #=> 4
|
|
18
|
+
#
|
|
19
|
+
def []=( l, v )
|
|
20
|
+
eval( "lambda {|v| #{l} = v}").call( v )
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
end
|
|
24
|
+
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
# = BinReadable
|
|
2
|
+
#
|
|
3
|
+
# This mixin solely depends on method read(n), which must be
|
|
4
|
+
# defined in the class/module where you mix in this module.
|
|
5
|
+
#
|
|
6
|
+
# == Todo
|
|
7
|
+
#
|
|
8
|
+
# * The name of this module sucks.
|
|
9
|
+
#
|
|
10
|
+
# == Authors
|
|
11
|
+
#
|
|
12
|
+
# * Michael Neumann
|
|
13
|
+
#
|
|
14
|
+
# == Copying
|
|
15
|
+
#
|
|
16
|
+
# Copyright (c) 2003 Michael Neumann
|
|
17
|
+
#
|
|
18
|
+
# Ruby License
|
|
19
|
+
#
|
|
20
|
+
# This module is free software. You may use, modify, and/or redistribute this
|
|
21
|
+
# software under the same terms as Ruby.
|
|
22
|
+
#
|
|
23
|
+
# This program is distributed in the hope that it will be useful, but WITHOUT
|
|
24
|
+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
25
|
+
# FOR A PARTICULAR PURPOSE.
|
|
26
|
+
|
|
27
|
+
# = BinReadable
|
|
28
|
+
#
|
|
29
|
+
# This mixin solely depends on method read(n), which must be
|
|
30
|
+
# defined in the class/module where you mix in this module.
|
|
31
|
+
|
|
32
|
+
module BinReadable
|
|
33
|
+
|
|
34
|
+
#--
|
|
35
|
+
# TODO Would like to get the core functionality this provides into the
|
|
36
|
+
# System module and then change BinaryReader to depend on that instead.
|
|
37
|
+
#++
|
|
38
|
+
module ByteOrder
|
|
39
|
+
|
|
40
|
+
Native = :Native
|
|
41
|
+
BigEndian = Big = Network = :BigEndian
|
|
42
|
+
LittleEndian = Little = :LittleEndian
|
|
43
|
+
|
|
44
|
+
# examines the byte order of the underlying machine
|
|
45
|
+
def byte_order
|
|
46
|
+
if [0x12345678].pack("L") == "\x12\x34\x56\x78"
|
|
47
|
+
BigEndian
|
|
48
|
+
else
|
|
49
|
+
LittleEndian
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
alias_method :byteorder, :byte_order
|
|
54
|
+
|
|
55
|
+
def little_endian?
|
|
56
|
+
byte_order == LittleEndian
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def big_endian?
|
|
60
|
+
byte_order == BigEndian
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
alias_method :little?, :little_endian?
|
|
64
|
+
alias_method :big?, :big_endian?
|
|
65
|
+
alias_method :network?, :big_endian?
|
|
66
|
+
|
|
67
|
+
module_function :byte_order, :byteorder
|
|
68
|
+
module_function :little_endian?, :little?
|
|
69
|
+
module_function :big_endian?, :big?, :network?
|
|
70
|
+
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
# default is native byte-order
|
|
74
|
+
def byte_order
|
|
75
|
+
@byte_order || ByteOrder::Native
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def byte_order=(new_byteorder)
|
|
79
|
+
@byte_order = new_byteorder
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
alias byteorder byte_order
|
|
83
|
+
alias byteorder= byte_order=
|
|
84
|
+
|
|
85
|
+
# == 8 bit
|
|
86
|
+
|
|
87
|
+
# no byteorder for 8 bit!
|
|
88
|
+
|
|
89
|
+
def read_word8
|
|
90
|
+
ru(1, 'C')
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
def read_int8
|
|
94
|
+
ru(1, 'c')
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# == 16 bit
|
|
98
|
+
|
|
99
|
+
# === Unsigned
|
|
100
|
+
|
|
101
|
+
def read_word16_native
|
|
102
|
+
ru(2, 'S')
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def read_word16_little
|
|
106
|
+
ru(2, 'v')
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
def read_word16_big
|
|
110
|
+
ru(2, 'n')
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
# === Signed
|
|
114
|
+
|
|
115
|
+
def read_int16_native
|
|
116
|
+
ru(2, 's')
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
def read_int16_little
|
|
120
|
+
# swap bytes if native=big (but we want little)
|
|
121
|
+
ru_swap(2, 's', ByteOrder::Big)
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def read_int16_big
|
|
125
|
+
# swap bytes if native=little (but we want big)
|
|
126
|
+
ru_swap(2, 's', ByteOrder::Little)
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# == 32 bit
|
|
130
|
+
|
|
131
|
+
# === Unsigned
|
|
132
|
+
|
|
133
|
+
def read_word32_native
|
|
134
|
+
ru(4, 'L')
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
def read_word32_little
|
|
138
|
+
ru(4, 'V')
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
def read_word32_big
|
|
142
|
+
ru(4, 'N')
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
# === Signed
|
|
146
|
+
|
|
147
|
+
def read_int32_native
|
|
148
|
+
ru(4, 'l')
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
def read_int32_little
|
|
152
|
+
# swap bytes if native=big (but we want little)
|
|
153
|
+
ru_swap(4, 'l', ByteOrder::Big)
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
def read_int32_big
|
|
157
|
+
# swap bytes if native=little (but we want big)
|
|
158
|
+
ru_swap(4, 'l', ByteOrder::Little)
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
# == Aliases
|
|
162
|
+
|
|
163
|
+
alias read_uint8 read_word8
|
|
164
|
+
|
|
165
|
+
# add some short-cut functions
|
|
166
|
+
%w(word16 int16 word32 int32).each do |typ|
|
|
167
|
+
eval %{
|
|
168
|
+
alias read_#{typ}_network read_#{typ}_big
|
|
169
|
+
def read_#{typ}(byte_order = nil)
|
|
170
|
+
case byte_order || @byte_order
|
|
171
|
+
when ByteOrder::Native then read_#{typ}_native
|
|
172
|
+
when ByteOrder::Little then read_#{typ}_little
|
|
173
|
+
when ByteOrder::Network then read_#{typ}_network
|
|
174
|
+
else raise ArgumentError
|
|
175
|
+
end
|
|
176
|
+
end
|
|
177
|
+
}
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
{:word16 => :uint16, :word32 => :uint32}.each do |old, new|
|
|
181
|
+
['', '_native', '_little', '_big', '_network'].each do |bo|
|
|
182
|
+
eval %{
|
|
183
|
+
alias read_#{new}#{bo} read_#{old}#{bo}
|
|
184
|
+
}
|
|
185
|
+
end
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
def read_cstring
|
|
189
|
+
str = ""
|
|
190
|
+
while (c=readn(1)) != "\0"
|
|
191
|
+
str << c
|
|
192
|
+
end
|
|
193
|
+
str
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
# read exactly n characters, otherwise raise an exception.
|
|
197
|
+
def readn(n)
|
|
198
|
+
str = read(n)
|
|
199
|
+
raise "couldn't read #{n} characters" if str.nil? or str.size != n
|
|
200
|
+
str
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
private
|
|
204
|
+
|
|
205
|
+
# shortcut method for readn+unpack
|
|
206
|
+
def ru(size, template)
|
|
207
|
+
readn(size).unpack(template).first
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
# same as method +ru+, but swap bytes if native byteorder == _byteorder_
|
|
211
|
+
def ru_swap(size, template, byteorder)
|
|
212
|
+
str = readn(size)
|
|
213
|
+
str.reverse! if ByteOrder.byteorder == byteorder
|
|
214
|
+
str.unpack(template).first
|
|
215
|
+
end
|
|
216
|
+
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
# Compatability with old version.
|
|
220
|
+
BinaryReader = BinReadable
|
|
221
|
+
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#--
|
|
3
|
+
# Copyright 2004 by Jim Weirich (jim@weirichhouse.org).
|
|
4
|
+
# All rights reserved.
|
|
5
|
+
|
|
6
|
+
# Permission is granted for use, copying, modification, distribution,
|
|
7
|
+
# and distribution of modified versions of this work as long as the
|
|
8
|
+
# above copyright notice is included.
|
|
9
|
+
#++
|
|
10
|
+
|
|
11
|
+
unless defined? BlankSlate
|
|
12
|
+
|
|
13
|
+
# BlankSlate provides an abstract base class with no predefined
|
|
14
|
+
# methods (except for <tt>\_\_send__</tt> and <tt>\_\_id__</tt>).
|
|
15
|
+
# BlankSlate is useful as a base class when writing classes that
|
|
16
|
+
# depend upon <tt>method_missing</tt> (e.g. dynamic proxies).
|
|
17
|
+
class BlankSlate
|
|
18
|
+
class << self
|
|
19
|
+
|
|
20
|
+
# Hide the method named +name+ in the BlankSlate class. Don't
|
|
21
|
+
# hide +instance_eval+ or any method beginning with "__".
|
|
22
|
+
def hide(name)
|
|
23
|
+
undef_method name if
|
|
24
|
+
instance_methods.include?(name.to_s) and
|
|
25
|
+
name !~ /^(__|instance_eval)/
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
instance_methods.each { |m| hide(m) }
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# Since Ruby is very dynamic, methods added to the ancestors of
|
|
34
|
+
# BlankSlate <em>after BlankSlate is defined</em> will show up in the
|
|
35
|
+
# list of available BlankSlate methods. We handle this by defining a
|
|
36
|
+
# hook in the Object and Kernel classes that will hide any defined
|
|
37
|
+
module Kernel #:nodoc:
|
|
38
|
+
class << self
|
|
39
|
+
alias_method :blank_slate_method_added, :method_added
|
|
40
|
+
|
|
41
|
+
# Detect method additions to Kernel and remove them in the
|
|
42
|
+
# BlankSlate class.
|
|
43
|
+
def method_added(name)
|
|
44
|
+
blank_slate_method_added(name)
|
|
45
|
+
return if self != Kernel
|
|
46
|
+
BlankSlate.hide(name)
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
class Object #:nodoc:
|
|
52
|
+
class << self
|
|
53
|
+
alias_method :blank_slate_method_added, :method_added
|
|
54
|
+
|
|
55
|
+
# Detect method additions to Object and remove them in the
|
|
56
|
+
# BlankSlate class.
|
|
57
|
+
def method_added(name)
|
|
58
|
+
blank_slate_method_added(name)
|
|
59
|
+
return if self != Object
|
|
60
|
+
BlankSlate.hide(name)
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
end
|
|
66
|
+
|
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
# = Buildable / BuildingBlock
|
|
2
|
+
#
|
|
3
|
+
# Build content programatically with Ruby and Ruby's blocks.
|
|
4
|
+
#
|
|
5
|
+
# require 'facets'
|
|
6
|
+
# require 'xmlhelper'
|
|
7
|
+
#
|
|
8
|
+
# builder = BuildingBlock.new(XMLHelper, :element)
|
|
9
|
+
#
|
|
10
|
+
# doc = builder.html do
|
|
11
|
+
#
|
|
12
|
+
# head do
|
|
13
|
+
# title "Test"
|
|
14
|
+
# end
|
|
15
|
+
#
|
|
16
|
+
# body do
|
|
17
|
+
# i "Hello"
|
|
18
|
+
# br
|
|
19
|
+
# text "Test"
|
|
20
|
+
# text "Hey"
|
|
21
|
+
# end
|
|
22
|
+
#
|
|
23
|
+
# end
|
|
24
|
+
#
|
|
25
|
+
# _produces_
|
|
26
|
+
#
|
|
27
|
+
# <html><head><title>Test</title><body><i>Hello</i><br />TestHey</body></html>
|
|
28
|
+
#
|
|
29
|
+
# All calls within the block are routed via the Helper Module's constructor method
|
|
30
|
+
# (#element in the above example) unless they are defined by the helper module, in which
|
|
31
|
+
# case they are sent to the helper module directly. The results of these invocations are
|
|
32
|
+
# appended to the output buffer. To prevent this, prefix the method with 'call_'.
|
|
33
|
+
#
|
|
34
|
+
# Sometimes keywords can get in the way of a construction. In these cases you can
|
|
35
|
+
# ensure use of constructor method by calling the special #build! command. You can
|
|
36
|
+
# also add verbatium text to the output via the #<< operator. Some common Ruby's built-in
|
|
37
|
+
# methods treated as keywords:
|
|
38
|
+
#
|
|
39
|
+
# inspect
|
|
40
|
+
# instance_eval
|
|
41
|
+
# respond_to?
|
|
42
|
+
# singleton_method_undefined
|
|
43
|
+
# initialize
|
|
44
|
+
# method_missing
|
|
45
|
+
# to_str
|
|
46
|
+
# to_s
|
|
47
|
+
#
|
|
48
|
+
# And a few other speciality methods besides:
|
|
49
|
+
#
|
|
50
|
+
# to_buffer
|
|
51
|
+
# build!
|
|
52
|
+
# <<
|
|
53
|
+
#
|
|
54
|
+
# This work was of course inspired by many great minds, and represents a concise and simple
|
|
55
|
+
# means of accomplishing this pattern of design, which is unique to Ruby.
|
|
56
|
+
#
|
|
57
|
+
# Buildable is mixin variation of BuildingBlock.
|
|
58
|
+
#
|
|
59
|
+
# require 'facets/buildable'
|
|
60
|
+
# require 'xmlmarkup' # hypothetical library
|
|
61
|
+
#
|
|
62
|
+
# module XMLMarkup
|
|
63
|
+
# include Buildable
|
|
64
|
+
# alias :build :element
|
|
65
|
+
# end
|
|
66
|
+
#
|
|
67
|
+
# doc = XMLMarkup.build do
|
|
68
|
+
# html do
|
|
69
|
+
# head do
|
|
70
|
+
# title "Test"
|
|
71
|
+
# end
|
|
72
|
+
# body do
|
|
73
|
+
# i "Hello"
|
|
74
|
+
# br
|
|
75
|
+
# text "Test"
|
|
76
|
+
# text "Hey"
|
|
77
|
+
# end
|
|
78
|
+
# end
|
|
79
|
+
# end
|
|
80
|
+
#
|
|
81
|
+
# _produces_
|
|
82
|
+
#
|
|
83
|
+
# <html><head><title>Test</title><body><i>Hello</i><br />TestHey</body></html>
|
|
84
|
+
#
|
|
85
|
+
# This is based on BuildingBlock. Refer to it for more information.
|
|
86
|
+
#
|
|
87
|
+
# == Authors
|
|
88
|
+
#
|
|
89
|
+
# * Thomas Sawyer
|
|
90
|
+
#
|
|
91
|
+
# == Todo
|
|
92
|
+
#
|
|
93
|
+
# * Change name of BuildingBlock to BlockUp ?
|
|
94
|
+
#
|
|
95
|
+
# == Copying
|
|
96
|
+
#
|
|
97
|
+
# Copyright (c) 2006 Thomas Sawyer
|
|
98
|
+
#
|
|
99
|
+
# Ruby License
|
|
100
|
+
#
|
|
101
|
+
# This module is free software. You may use, modify, and/or redistribute this
|
|
102
|
+
# software under the same terms as Ruby.
|
|
103
|
+
#
|
|
104
|
+
# This program is distributed in the hope that it will be useful, but WITHOUT
|
|
105
|
+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
106
|
+
# FOR A PARTICULAR PURPOSE.
|
|
107
|
+
|
|
108
|
+
#require 'facets/buildingblock'
|
|
109
|
+
|
|
110
|
+
# = Buildable
|
|
111
|
+
#
|
|
112
|
+
# Buildable is mixin variation of BuildingBlock.
|
|
113
|
+
#
|
|
114
|
+
# require 'facets/buildable'
|
|
115
|
+
# require 'xmlmarkup' # hypothetical library
|
|
116
|
+
#
|
|
117
|
+
# module XMLMarkup
|
|
118
|
+
# include Buildable
|
|
119
|
+
# alias :build :element
|
|
120
|
+
# end
|
|
121
|
+
#
|
|
122
|
+
# doc = XMLMarkup.build do
|
|
123
|
+
# html do
|
|
124
|
+
# head do
|
|
125
|
+
# title "Test"
|
|
126
|
+
# end
|
|
127
|
+
# body do
|
|
128
|
+
# i "Hello"
|
|
129
|
+
# br
|
|
130
|
+
# text "Test"
|
|
131
|
+
# text "Hey"
|
|
132
|
+
# end
|
|
133
|
+
# end
|
|
134
|
+
# end
|
|
135
|
+
#
|
|
136
|
+
# _produces_
|
|
137
|
+
#
|
|
138
|
+
# <html><head><title>Test</title><body><i>Hello</i><br />TestHey</body></html>
|
|
139
|
+
#
|
|
140
|
+
# This is based on BuildingBlock. Refer to it for more information.
|
|
141
|
+
|
|
142
|
+
module Buildable
|
|
143
|
+
|
|
144
|
+
def self.included(base)
|
|
145
|
+
singleton = (class << base; self; end)
|
|
146
|
+
singleton.send(:define_method, :builder) do
|
|
147
|
+
@builder ||= BuildingBlock.new(base, :build)
|
|
148
|
+
end
|
|
149
|
+
base.module_eval %{
|
|
150
|
+
def self.build(&block)
|
|
151
|
+
builder.instance_eval(&block)
|
|
152
|
+
end
|
|
153
|
+
}
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
# = BuildingBlock
|
|
159
|
+
#
|
|
160
|
+
# Build content programatically with Ruby and Ruby's blocks.
|
|
161
|
+
#
|
|
162
|
+
# require 'facets'
|
|
163
|
+
# require 'xmlhelper'
|
|
164
|
+
#
|
|
165
|
+
# builder = BuildingBlock.new(XMLHelper, :element)
|
|
166
|
+
#
|
|
167
|
+
# doc = builder.html do
|
|
168
|
+
#
|
|
169
|
+
# head do
|
|
170
|
+
# title "Test"
|
|
171
|
+
# end
|
|
172
|
+
#
|
|
173
|
+
# body do
|
|
174
|
+
# i "Hello"
|
|
175
|
+
# br
|
|
176
|
+
# text "Test"
|
|
177
|
+
# text "Hey"
|
|
178
|
+
# end
|
|
179
|
+
#
|
|
180
|
+
# end
|
|
181
|
+
#
|
|
182
|
+
# _produces_
|
|
183
|
+
#
|
|
184
|
+
# <html><head><title>Test</title><body><i>Hello</i><br />TestHey</body></html>
|
|
185
|
+
#
|
|
186
|
+
# All calls within the block are routed via the Helper Module's constructor method
|
|
187
|
+
# (#element in the above example) unless they are defined by the helper module, in which
|
|
188
|
+
# case they are sent to the helper module directly. The results of these invocations are
|
|
189
|
+
# appended to the output buffer. To prevent this, prefix the method with 'call_'.
|
|
190
|
+
#
|
|
191
|
+
# Sometimes keywords can get in the way of a construction. In these cases you can
|
|
192
|
+
# ensure use of constructor method by calling the special #build! command. You can
|
|
193
|
+
# also add verbatium text to the output via the #<< operator. Some common Ruby's built-in
|
|
194
|
+
# methods treated as keywords:
|
|
195
|
+
#
|
|
196
|
+
# inspect
|
|
197
|
+
# instance_eval
|
|
198
|
+
# respond_to?
|
|
199
|
+
# singleton_method_undefined
|
|
200
|
+
# initialize
|
|
201
|
+
# method_missing
|
|
202
|
+
# to_str
|
|
203
|
+
# to_s
|
|
204
|
+
#
|
|
205
|
+
# And a few other speciality methods besides:
|
|
206
|
+
#
|
|
207
|
+
# to_buffer
|
|
208
|
+
# build!
|
|
209
|
+
# <<
|
|
210
|
+
#
|
|
211
|
+
# This work was of course inspired by many great minds, and represents a concise and simple
|
|
212
|
+
# means of accomplishing this pattern of design, which is unique to Ruby.
|
|
213
|
+
|
|
214
|
+
class BuildingBlock
|
|
215
|
+
|
|
216
|
+
alias __p__ p
|
|
217
|
+
|
|
218
|
+
# NOTE: When debugging, you may want to add the 'p' entry.
|
|
219
|
+
# TODO: There may be other methods that need to be in this exception list.
|
|
220
|
+
|
|
221
|
+
ESCAPE = [
|
|
222
|
+
'singleton_method_undefined',
|
|
223
|
+
'respond_to?',
|
|
224
|
+
'instance_eval',
|
|
225
|
+
'inspect',
|
|
226
|
+
'initialize'
|
|
227
|
+
] # 'to_ary', 'p' ]
|
|
228
|
+
|
|
229
|
+
methods = instance_methods | public_instance_methods | private_instance_methods | protected_instance_methods
|
|
230
|
+
methods.each{|m| undef_method m unless m=~/^__/ or ESCAPE.include?(m)}
|
|
231
|
+
|
|
232
|
+
#
|
|
233
|
+
|
|
234
|
+
def initialize(dslModule, constructor, output_buffer=nil)
|
|
235
|
+
@buffer = output_buffer || ''
|
|
236
|
+
@stack = []
|
|
237
|
+
|
|
238
|
+
@dsl = Class.new{
|
|
239
|
+
include dslModule
|
|
240
|
+
}.new
|
|
241
|
+
|
|
242
|
+
@constructor = constructor
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
#
|
|
246
|
+
|
|
247
|
+
def build!(s, *a, &b)
|
|
248
|
+
s = s.to_s
|
|
249
|
+
|
|
250
|
+
if b
|
|
251
|
+
@stack << @buffer
|
|
252
|
+
@buffer = ''
|
|
253
|
+
instance_eval(&b)
|
|
254
|
+
out = @buffer
|
|
255
|
+
@buffer = @stack.pop
|
|
256
|
+
a.unshift(out)
|
|
257
|
+
end
|
|
258
|
+
|
|
259
|
+
if s =~ /^call_/
|
|
260
|
+
m = s[5..-1].to_sym
|
|
261
|
+
@dsl.send(m, *a, &b).to_s
|
|
262
|
+
elsif @dsl.respond_to?(s) #o =~ /^build_/
|
|
263
|
+
@buffer << @dsl.send(s, *a, &b).to_s
|
|
264
|
+
else
|
|
265
|
+
s = s.chomp('?') if s[-1,1] == '?'
|
|
266
|
+
@buffer << @dsl.send(@constructor, s, *a).to_s
|
|
267
|
+
end
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
#
|
|
271
|
+
|
|
272
|
+
def method_missing(s, *a, &b)
|
|
273
|
+
build!(s, *a, &b)
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
# Return buffer
|
|
277
|
+
|
|
278
|
+
def to_buffer()
|
|
279
|
+
@buffer
|
|
280
|
+
end
|
|
281
|
+
|
|
282
|
+
# Return buffer as string.
|
|
283
|
+
|
|
284
|
+
def to_s() @buffer.to_s end
|
|
285
|
+
def to_str() @buffer.to_str end
|
|
286
|
+
|
|
287
|
+
# Add directly to buffer.
|
|
288
|
+
|
|
289
|
+
def <<(s)
|
|
290
|
+
@buffer << s.to_s
|
|
291
|
+
end
|
|
292
|
+
|
|
293
|
+
# If creating and XML/HTML builder, you'll want to alias this to tag!.
|
|
294
|
+
#def build!(m, *a)
|
|
295
|
+
# @buffer << @dsl.send(@constructor, m, *a).to_s
|
|
296
|
+
#end
|
|
297
|
+
|
|
298
|
+
# Could improve.
|
|
299
|
+
|
|
300
|
+
def inspect
|
|
301
|
+
r = super
|
|
302
|
+
i = r.index(',')
|
|
303
|
+
return r[0...i] + ">"
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
end
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
=begin
|
|
312
|
+
@module = dslModule
|
|
313
|
+
@constructor = constructor
|
|
314
|
+
@instance_eval = method(:instance_eval)
|
|
315
|
+
@module
|
|
316
|
+
@method = {}
|
|
317
|
+
|
|
318
|
+
@stack = []
|
|
319
|
+
@out = output_buffer || ''
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
meths = []
|
|
323
|
+
#meths.concat singleton_methods
|
|
324
|
+
meths.concat public_methods
|
|
325
|
+
meths.concat protected_methods
|
|
326
|
+
meths.concat private_methods
|
|
327
|
+
meths.each do |m|
|
|
328
|
+
@method[m.to_sym] = method(m)
|
|
329
|
+
end
|
|
330
|
+
|
|
331
|
+
class << self
|
|
332
|
+
escape = ESCAPE
|
|
333
|
+
meths = []
|
|
334
|
+
#meths.concat singleton_methods
|
|
335
|
+
meths.concat public_instance_methods
|
|
336
|
+
meths.concat protected_instance_methods
|
|
337
|
+
meths.concat private_instance_methods
|
|
338
|
+
meths.each do |m|
|
|
339
|
+
undef_method(m) unless m =~ /^__/ or escape.include?(m)
|
|
340
|
+
end
|
|
341
|
+
end
|
|
342
|
+
end
|
|
343
|
+
=end
|
|
344
|
+
|