I couldn’t quite figure this out… I am either missing something (I
hope) or there is a small bug:
Module === Module #=> true
Module === Module.new #=> true
af = Module.instance_method(:append_features)
af.bind(Module.new).call(Module) # ok
af.bind(Module.new).call(Module.new) # ok
af.bind(Module).call(Module) # ok
af.bind(Module).call(Module.new) # error!
TypeError: wrong argument type Class (expected Module)
I am kind of puzzled by this… any ideas?
Brian.
On 10/5/06, Brian M. [email protected] wrote:
af.bind(Module).call(Module) # ok
af.bind(Module).call(Module.new) # error!
TypeError: wrong argument type Class (expected Module)
I am kind of puzzled by this… any ideas?
To be more specific, the third “ok” is unexpected if the fourth is not
going to work (which went as I expected).
Brian.
Hi,
In message “Re: Some wierd Module#append_features behavior”
on Fri, 6 Oct 2006 08:04:27 +0900, “Brian M.”
[email protected] writes:
|af.bind(Module).call(Module.new) # error!
|
|TypeError: wrong argument type Class (expected Module)
|
|I am kind of puzzled by this… any ideas?
append_feature tried to append features in Module to a module from
Module.new, but Module itself is a class, not module.
matz.
On 10/6/06, Yukihiro M. [email protected] wrote:
append_feature tried to append features in Module to a module from
Module.new, but Module itself is a class, not module.
Yes. I know that part. The odd thing that I should have been more clear
on is:
af.bind(Module).call(Module).
Module is a Class is both cases but this one seems to work. I am not
sure why.
Brian.
Hi,
In message “Re: Some wierd Module#append_features behavior”
on Fri, 6 Oct 2006 23:05:41 +0900, “Brian M.”
[email protected] writes:
|Yes. I know that part. The odd thing that I should have been more clear on is:
|
|af.bind(Module).call(Module).
|
|Module is a Class is both cases but this one seems to work. I am not sure why.
It is a bug. Thank you for finding it.
matz.