/*
* call-seq:
* rd.dup -> rd_copy
*
* Duplicates and snapshots the current state of a Raindrops object.
*/
static VALUE init_copy(VALUE dest, VALUE source)
{
struct raindrops *dst = DATA_PTR(dest);
struct raindrops *src = get(source);
init(dest, SIZET2NUM(src->size));
memcpy(dst->drops, src->drops, raindrop_size * src->size);
return dest;
}