Sha256: 506e4f40c48637008d630b39791c6a454b8fdee872cf3b9b5e15bce1c22fd759
Contents?: true
Size: 918 Bytes
Versions: 3
Compression:
Stored size: 918 Bytes
Contents
class Object if RUBY_VERSION >= '1.9' def named(name, method, *args, &named_block) extend Module.new { define_method(name) do |*rest, &block| block = named_block if named_block __send__(method, *(args + rest), &block) end } end else def named(name, method, *args, &block) extend Module.new { define_method(name) { |*rest| __send__(method, *(args + rest), &block) } } end end end class Module if RUBY_VERSION >= '1.9' def named(name, method, *args, &named_block) include Module.new { define_method(name) do |*rest, &block| block = named_block if named_block __send__(method, *(args + rest), &block) end } end else def named(name, method, *args, &block) include Module.new { define_method(name) { |*rest| __send__(method, *(args + rest), &block) } } end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
spruz-0.2.11 | lib/spruz/xt/named.rb |
spruz-0.2.10 | lib/spruz/xt/named.rb |
spruz-0.2.9 | lib/spruz/xt/named.rb |