/*
* call-seq:
* rd.to_ary -> Array
*
* converts the Raindrops structure to an Array
*/
static VALUE to_ary(VALUE self)
{
struct raindrops *r = get(self);
VALUE rv = rb_ary_new2(r->size);
size_t i;
unsigned long base = (unsigned long)r->drops;
for (i = 0; i < r->size; i++) {
rb_ary_push(rv, ULONG2NUM(*((unsigned long *)base)));
base += raindrop_size;
}
return rv;
}