Hi Tom,
In MacRuby, an Array is actually a NSMutableArray instance, as you may
know.
If you need to call a C or Objective-C method that accepts a C-style
array, you can just pass the regular array object and MacRuby should
do the conversion for you.
If you want to build the C array by yourself in pure Ruby, you might
want to look at the Pointer class.
irb(main):001:0> ptr = Pointer.new(:int, 5)
=> #<Pointer:0x200337640>
irb(main):002:0> 5.times { |i| ptr[i] = i }
=> 5
This creates a C-style array of 5 C integers. You can access the slots
by using #[] and #[]=. If you pass this pointer to a C or Objective-C
method that is supposed to accept a C-style array of C integers, it
should work.
Laurent
On Sep 10, 2009, at 9:37 AM, Tom Kleber wrote:
Is it possible to create static c-arrays in macruby?
In jruby Array has a a #to_java method which converts a Array object
to an java array (a = Array.new(6).to_java(:double))
Is there something like that supported in macruby?
Tom
_______________________________________________
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