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_sk...@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@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel > > > _______________________________________________ > MacRuby-devel mailing list > MacRuby-devel@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel