Ruby
3.1.0dev(2021-09-10revisionb76ad15ed0da636161de0243c547ee1e6fc95681)
|
Go to the documentation of this file. 1 #ifndef FIDDLE_CONVERSIONS_H
2 #define FIDDLE_CONVERSIONS_H
37 #define VALUE2GENERIC(_type, _src, _dst) \
38 rb_fiddle_value_to_generic((_type), &(_src), (_dst))
39 #define INT2FFI_TYPE(_type) \
40 rb_fiddle_int_to_ffi_type(_type)
41 #define GENERIC2VALUE(_type, _retval) \
42 rb_fiddle_generic_to_value((_type), (_retval))
44 #if SIZEOF_VOIDP == SIZEOF_LONG
45 # define PTR2NUM(x) (LONG2NUM((long)(x)))
46 # define NUM2PTR(x) ((void*)(NUM2ULONG(x)))
49 # define PTR2NUM(x) (LL2NUM((LONG_LONG)(x)))
50 # define NUM2PTR(x) ((void*)(NUM2ULL(x)))
VALUE rb_fiddle_generic_to_value(VALUE rettype, fiddle_generic retval)
VALUE rb_fiddle_type_ensure(VALUE type)
ffi_type * rb_fiddle_int_to_ffi_type(int type)
void value_to_generic(int type, VALUE src, fiddle_generic *dst)
void rb_fiddle_value_to_generic(int type, VALUE *src, fiddle_generic *dst)
VALUE generic_to_value(VALUE rettype, fiddle_generic retval)
ffi_type * int_to_ffi_type(int type)
VALUE type(ANYARGS)
ANYARGS-ed function type.