25 *wrap = (addrnum !=
func) ? func : 0;
59 return data ?
sizeof(*data) + data->
size : 0;
94 memset(ptr,0,(
size_t)size);
108 else if (val ==
Qnil) {
150 if (
rb_scan_args(argc, argv,
"12", &ptr, &size, &sym) >= 1) {
152 if (addrnum != ptr) wrap =
ptr;
169 data->
wrap[1] = funcwrap;
205 rb_bug(
"rb_dlptr_s_malloc");
376 rb_bug(
"rb_dlptr_to_str");
438 return diff > 0 ?
INT2NUM(1) : INT2NUM(-1);
499 retval =
INT2NUM(*((
char *)data->
ptr + offset));
507 rb_bug(
"rb_dlptr_aref()");
524 VALUE arg0, arg1, arg2;
532 switch(
rb_scan_args(argc, argv,
"21", &arg0, &arg1, &arg2) ){
550 memcpy((
char *)data->
ptr + offset, mem, len);
554 rb_bug(
"rb_dlptr_aset()");
617 if (num == val) wrap = 0;