ext/fiddle/conversions.c File Reference

#include <fiddle.h>

Include dependency graph for conversions.c:

Go to the source code of this file.

Defines

#define rb_ffi_type_of(t)   (signed_p ? &ffi_type_s##t : &ffi_type_u##t)

Functions

ffi_type * int_to_ffi_type (int type)
void value_to_generic (int type, VALUE src, fiddle_generic *dst)
VALUE generic_to_value (VALUE rettype, fiddle_generic retval)


Define Documentation

#define rb_ffi_type_of (  )     (signed_p ? &ffi_type_s##t : &ffi_type_u##t)

Referenced by int_to_ffi_type().


Function Documentation

VALUE generic_to_value ( VALUE  rettype,
fiddle_generic  retval 
)

Definition at line 86 of file conversions.c.

References fiddle_generic::ddouble, fiddle_generic::ffloat, INT2NUM(), LONG2NUM, mFiddle, NUM2INT, fiddle_generic::pointer, PTR2NUM, Qnil, rb_const_get(), rb_eRuntimeError, rb_float_new(), rb_funcall(), rb_intern, rb_raise(), fiddle_generic::sint, fiddle_generic::slong, type, TYPE_CHAR, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_LONG, TYPE_SHORT, TYPE_VOID, TYPE_VOIDP, fiddle_generic::ulong, and ULONG2NUM().

ffi_type* int_to_ffi_type ( int  type  ) 

Definition at line 4 of file conversions.c.

References rb_eRuntimeError, rb_ffi_type_of, rb_raise(), TYPE_CHAR, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_LONG, TYPE_SHORT, TYPE_VOID, and TYPE_VOIDP.

void value_to_generic ( int  type,
VALUE  src,
fiddle_generic dst 
)

Definition at line 43 of file conversions.c.

References fiddle_generic::ddouble, fiddle_generic::ffloat, NUM2DBL, NUM2INT, NUM2LONG(), NUM2PTR, fiddle_generic::pointer, rb_eRuntimeError, rb_Integer(), rb_raise(), fiddle_generic::sint, fiddle_generic::slong, TYPE_CHAR, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_LONG, TYPE_SHORT, TYPE_VOID, TYPE_VOIDP, and fiddle_generic::ulong.


Generated on Wed Aug 10 09:17:57 2011 for Ruby by  doxygen 1.4.7