[Ironruby-core] Annoymous class extending a module doesn't return expected kind_of

Ben Hall ben2004uk at googlemail.com
Mon Oct 6 05:42:42 EDT 2008


Hi Curt,

Any ideas when the next release will happen? Is this going to be a
post PDC thing?

Ben

On Mon, Oct 6, 2008 at 6:13 AM, Curt Hagenlocher <curth at microsoft.com> wrote:
> This is working for me with our internal sources but not with what's current in RubyForge.  I think we might be a few days behind on the sync -- you should see it working after the next one happens.
>
> -----Original Message-----
> From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Ben Hall
> Sent: Sunday, October 05, 2008 6:28 PM
> To: ironruby-core at rubyforge.org
> Subject: [Ironruby-core] Annoymous class extending a module doesn't return expected kind_of
>
> Hi guys,
>
> I've been bashing my head again this problem for the last few days
> where the object I expected wasn't passed around, tonight I decided to
> break it down and focus on a much small part.  Turns out, I was
> looking in the wrong part.
>
> This is what I think the problem is. The code is creating an anonymous
> class which is extending a module.  The code then does a kind_of? to
> decide what to do with it.
>
> >From what I can tell, it looks like the kind_of doesn't recognize the
> modules it is extending.  This is the code which demonstrates the
> problem:
>
> Code Repro:
> module AAA
>   class << self
>     def a
>      puts "Hello"
>     end
>   end
>
>  def myAAA
>    klass = Class.new do
>        extend AAA
>    end
>
>    puts "Am I a type of what I extended (AAA)?"
>    puts klass.kind_of?(AAA)
>  end
> end
>
> class XYZ
>  include AAA
> end
>
> $a = XYZ.new
> $a.myAAA
>
>
> With MRI, true is returned.  With IronRuby, false is returned.
>
> Output:
>
> E:\IronRuby\trunk\build\debug>ruby array_test
> Am I a type of what I extended (AAA)?
> true
>
> E:\IronRuby\trunk\build\debug>ir array_test
> Am I a type of what I extended (AAA)?
> false
>
>
> This has blocked me moving on.  Anyone got any ideas?
>
> Any help on this would be great!
>
> Thanks
>
> Ben
> Blog.BenHall.me.uk
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
>
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
>


More information about the Ironruby-core mailing list