[MacRuby-devel] calling Objective-C method with block parameter

Thibault Martin-Lagardette thibault.ml at gmail.com
Tue Nov 16 14:23:12 PST 2010


Also, it is to note that if the block lives inside a framework you've made (or downladed – one that is not part of the system), you'll have to generate the BridgeSupport files yourselves.
This is important because the runtime needs to know that you're trying to use blocks, and you instruct it to use them by creating and using the said BridgeSupport files :-)

-- 
Thibault Martin-Lagardette



On Nov 16, 2010, at 23:10, Matt Aimonetti wrote:

> Did you install BridgeSupport preview 1?  http://www.macruby.org/blog/2010/10/08/bridgesupport-preview.html
> It is required to use C blocks.
> 
> Thanks,
> 
> - Matt
> 
> 
> On Mon, Nov 15, 2010 at 2:51 AM, Alan Skipp <al_skipp at fastmail.fm> wrote:
> Hello everyone,
> I'm attempting to call a method on an Objective-C object which takes a block as its parameter, but I'm not having much luck.  I can happily create the object in Macruby and send the message with a Proc. The NSLog call within the Objective-C method body succeeds, but the 'block()' doesn't. Am I doing something obviously wrong here? (I'm using a nightly build from sometime last week).
> 
> 
> This is the Objective-C method:
> 
> - (void)callBlock:(void (^)())block;
> {
> 	NSLog(@"block: %@", block);
> 	block();
> }
> 
> Here is the ruby code:
> 
> b = TestBlock.new
> b.callBlock( Proc.new { puts "hello" } )
> 
> 
> The output is as follows:
> 
> block: #<Proc:0x2005c9b80>
> Program received signal:  “EXC_BAD_ACCESS”.
> 
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
> 
> 
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-devel/attachments/20101116/258d06bb/attachment-0001.html>


More information about the MacRuby-devel mailing list