diff options
Diffstat (limited to 'ext/ffi_c/AbstractMemory.h')
-rw-r--r-- | ext/ffi_c/AbstractMemory.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/ffi_c/AbstractMemory.h b/ext/ffi_c/AbstractMemory.h index 1119288..5973bac 100644 --- a/ext/ffi_c/AbstractMemory.h +++ b/ext/ffi_c/AbstractMemory.h @@ -86,12 +86,13 @@ struct AbstractMemory_ { }; +extern const rb_data_type_t rbffi_abstract_memory_data_type; extern VALUE rbffi_AbstractMemoryClass; extern MemoryOps rbffi_AbstractMemoryOps; extern void rbffi_AbstractMemory_Init(VALUE ffiModule); -extern AbstractMemory* rbffi_AbstractMemory_Cast(VALUE obj, VALUE klass); +extern AbstractMemory* rbffi_AbstractMemory_Cast(VALUE obj, const rb_data_type_t *data_type); extern void rbffi_AbstractMemory_Error(AbstractMemory *, int op); @@ -161,7 +162,7 @@ get_memory_op(Type* type) } } -#define MEMORY(obj) rbffi_AbstractMemory_Cast((obj), rbffi_AbstractMemoryClass) +#define MEMORY(obj) rbffi_AbstractMemory_Cast((obj), &rbffi_abstract_memory_data_type) #define MEMORY_PTR(obj) MEMORY((obj))->address #define MEMORY_LEN(obj) MEMORY((obj))->size |