/* class method: object(size1,size2,...,sizeN) */ static VALUE na_s_new_object(int argc, VALUE *argv, VALUE klass) { return na_new2(argc, argv, NA_ROBJ, klass); } /* method: dup() */ VALUE na_clone(VALUE self) { struct NARRAY *org, *cpy; GetNArray(self,org); cpy = na_alloc_struct(org->type,org->rank,org->shape); memcpy(cpy->ptr, org->ptr, na_sizeof[org->type] * org->total); return na_wrap_struct(cpy,self); }