3 #ifdef HAVE_RUBY_MEMORY_VIEW_H 
   10 #if SIZEOF_INTPTR_T == SIZEOF_LONG_LONG 
   11 #   define INTPTR2NUM LL2NUM 
   12 #   define UINTPTR2NUM ULL2NUM 
   13 #elif SIZEOF_INTPTR_T == SIZEOF_LONG 
   14 #   define INTPTR2NUM LONG2NUM 
   15 #   define UINTPTR2NUM ULONG2NUM 
   17 #   define INTPTR2NUM INT2NUM 
   18 #   define UINTPTR2NUM UINT2NUM 
   30 fiddle_memview_mark(
void *
ptr)
 
   52 fiddle_memview_free(
void *
ptr)
 
   55     fiddle_memview_release(data);
 
   60 fiddle_memview_memsize(
const void *
ptr)
 
   68     {fiddle_memview_mark, fiddle_memview_free, fiddle_memview_memsize,},
 
   72 rb_fiddle_memview_s_allocate(
VALUE klass)
 
   84 rb_fiddle_memview_release(
VALUE obj)
 
   90     fiddle_memview_release(data);
 
   95 rb_fiddle_memview_s_export(
VALUE klass, 
VALUE target)
 
  104 rb_fiddle_memview_initialize(
VALUE obj, 
VALUE target)
 
  118 rb_fiddle_memview_get_obj(
VALUE obj)
 
  127 rb_fiddle_memview_get_byte_size(
VALUE obj)
 
  137 rb_fiddle_memview_get_readonly(
VALUE obj)
 
  147 rb_fiddle_memview_get_format(
VALUE obj)
 
  157 rb_fiddle_memview_get_item_size(
VALUE obj)
 
  167 rb_fiddle_memview_get_ndim(
VALUE obj)
 
  177 rb_fiddle_memview_get_shape(
VALUE obj)
 
  185     const ssize_t ndim = data->
view.
ndim;
 
  188     for (i = 0; i < ndim; ++i) {
 
  195 rb_fiddle_memview_get_strides(
VALUE obj)
 
  203     const ssize_t ndim = data->
view.
ndim;
 
  206     for (i = 0; i < ndim; ++i) {
 
  213 rb_fiddle_memview_get_sub_offsets(
VALUE obj)
 
  221     const ssize_t ndim = data->
view.
ndim;
 
  224     for (i = 0; i < ndim; ++i) {
 
  238     const ssize_t ndim = data->
view.
ndim;
 
  244     ssize_t *indices = 
ALLOCV_N(ssize_t, indices_v, ndim);
 
  247     for (i = 0; i < ndim; ++i) {
 
  271 rb_fiddle_memview_to_s(
VALUE self)
 
  274     const char *raw_data;
 
  280                          &fiddle_memview_data_type,
 
  294         CONST_ID(id_memory_view, 
"memory_view");