[MacRuby-devel] Calling ObjC method
Laurent Sansonetti
lsansonetti at apple.com
Fri Mar 7 10:20:48 PST 2008
I yesterday night investigated a few ways to work around this problem,
temporarily, but wasn't able to find one that would work without
impacting the current YARV dispatching performance.
Let's therefore keep this bug around and in theory it should be
automatically fixed once we will use the Objective-C dispatcher for
everything.
Laurent
On Mar 4, 2008, at 11:46 PM, Satoshi Nakagawa wrote:
> Oh sorry. You are right.
> performSelector worked well for (id)test;
>
> --
> Satoshi Nakagawa
>
> On 2008/03/05, at 15:03, Laurent Sansonetti wrote:
>
>> Ah yes, it's because your test method is defined as returning
>> "void", but MacRuby wants to convert the return value because
>> [NSObject -performSelector:] is registered in the runtime to return
>> an Objective-C object instead (@).
>>
>> Calling [-performSelector:] on methods that do not return '@' isn't
>> a good idea, as in RubyCocoa.
>>
>> But we need to fix the real bug, which is that the test method
>> should be called in priority, and not Kernel#test :)
>>
>> Laurent
>
More information about the MacRuby-devel
mailing list