/* Returns string containing the raw data bytes in NArray. @overload to_string() @return [String] String object containing binary raw data. */ static VALUE nary_to_string(VALUE self) { size_t len, esz; char *ptr; VALUE str; narray_t *na; GetNArray(self,na); if (na->type == NARRAY_VIEW_T) { self = na_copy(self); } esz = na_get_elmsz(self); len = na->size * esz; ptr = na_get_pointer_for_read(self); str = rb_usascii_str_new(ptr,len); RB_GC_GUARD(self); return str; }
/* @overload <%=name%>(<%=args[1][1]%>,<%=args[3][1]%>) @param [DFloat] <%=args[1][1]%> @param [DFloat] <%=args[3][1]%> @return [<%=class_name%>] self <%= description %> */ static VALUE <%=c_func(2)%>(VALUE self, VALUE v1, VALUE v2) { <%=struct%> *w; double *p1, *p2; TypedData_Get_Struct(self, <%=struct%>, &<%=data_type_var%>, w); v1 = cast_1d_contiguous(v1, cDF); p1 = (double*)na_get_pointer_for_read(v1); v2 = cast_1d_contiguous(v2, cDF); p2 = (double*)na_get_pointer_for_read(v2); <%=func_name%>(w, p1, RNARRAY_SIZE(v1), p2, RNARRAY_SIZE(v2)); RB_GC_GUARD(v1); RB_GC_GUARD(v2); return self; }