Data Structures |
struct | dl_handle |
struct | cfunc_data |
struct | ptr_data |
Defines |
#define | FUNC_CDECL(x) x |
#define | MAX_CALLBACK 5 |
#define | DLSTACK_TYPE SIGNED_VALUE |
#define | DLSTACK_SIZE (20) |
#define | DLSTACK_PROTO |
#define | DLSTACK_ARGS(stack) |
#define | DLSTACK_PROTO0_ void |
#define | DLSTACK_PROTO1_ DLSTACK_TYPE |
#define | DLSTACK_PROTO2_ DLSTACK_PROTO1_, DLSTACK_TYPE |
#define | DLSTACK_PROTO3_ DLSTACK_PROTO2_, DLSTACK_TYPE |
#define | DLSTACK_PROTO4_ DLSTACK_PROTO3_, DLSTACK_TYPE |
#define | DLSTACK_PROTO4_ DLSTACK_PROTO3_, DLSTACK_TYPE |
#define | DLSTACK_PROTO5_ DLSTACK_PROTO4_, DLSTACK_TYPE |
#define | DLSTACK_PROTO6_ DLSTACK_PROTO5_, DLSTACK_TYPE |
#define | DLSTACK_PROTO7_ DLSTACK_PROTO6_, DLSTACK_TYPE |
#define | DLSTACK_PROTO8_ DLSTACK_PROTO7_, DLSTACK_TYPE |
#define | DLSTACK_PROTO9_ DLSTACK_PROTO8_, DLSTACK_TYPE |
#define | DLSTACK_PROTO10_ DLSTACK_PROTO9_, DLSTACK_TYPE |
#define | DLSTACK_PROTO11_ DLSTACK_PROTO10_, DLSTACK_TYPE |
#define | DLSTACK_PROTO12_ DLSTACK_PROTO11_, DLSTACK_TYPE |
#define | DLSTACK_PROTO13_ DLSTACK_PROTO12_, DLSTACK_TYPE |
#define | DLSTACK_PROTO14_ DLSTACK_PROTO13_, DLSTACK_TYPE |
#define | DLSTACK_PROTO14_ DLSTACK_PROTO13_, DLSTACK_TYPE |
#define | DLSTACK_PROTO15_ DLSTACK_PROTO14_, DLSTACK_TYPE |
#define | DLSTACK_PROTO16_ DLSTACK_PROTO15_, DLSTACK_TYPE |
#define | DLSTACK_PROTO17_ DLSTACK_PROTO16_, DLSTACK_TYPE |
#define | DLSTACK_PROTO18_ DLSTACK_PROTO17_, DLSTACK_TYPE |
#define | DLSTACK_PROTO19_ DLSTACK_PROTO18_, DLSTACK_TYPE |
#define | DLSTACK_PROTO20_ DLSTACK_PROTO19_, DLSTACK_TYPE |
#define | DLSTACK_PROTO0 void |
#define | DLSTACK_PROTO1 DLSTACK_PROTO1_, ... |
#define | DLSTACK_PROTO2 DLSTACK_PROTO2_, ... |
#define | DLSTACK_PROTO3 DLSTACK_PROTO3_, ... |
#define | DLSTACK_PROTO4 DLSTACK_PROTO4_, ... |
#define | DLSTACK_PROTO4 DLSTACK_PROTO4_, ... |
#define | DLSTACK_PROTO5 DLSTACK_PROTO5_, ... |
#define | DLSTACK_PROTO6 DLSTACK_PROTO6_, ... |
#define | DLSTACK_PROTO7 DLSTACK_PROTO7_, ... |
#define | DLSTACK_PROTO8 DLSTACK_PROTO8_, ... |
#define | DLSTACK_PROTO9 DLSTACK_PROTO9_, ... |
#define | DLSTACK_PROTO10 DLSTACK_PROTO10_, ... |
#define | DLSTACK_PROTO11 DLSTACK_PROTO11_, ... |
#define | DLSTACK_PROTO12 DLSTACK_PROTO12_, ... |
#define | DLSTACK_PROTO13 DLSTACK_PROTO13_, ... |
#define | DLSTACK_PROTO14 DLSTACK_PROTO14_, ... |
#define | DLSTACK_PROTO14 DLSTACK_PROTO14_, ... |
#define | DLSTACK_PROTO15 DLSTACK_PROTO15_, ... |
#define | DLSTACK_PROTO16 DLSTACK_PROTO16_, ... |
#define | DLSTACK_PROTO17 DLSTACK_PROTO17_, ... |
#define | DLSTACK_PROTO18 DLSTACK_PROTO18_, ... |
#define | DLSTACK_PROTO19 DLSTACK_PROTO19_, ... |
#define | DLSTACK_PROTO20 DLSTACK_PROTO20_, ... |
#define | DLSTACK_ARGS0(stack) |
#define | DLSTACK_ARGS1(stack) (stack)[0] |
#define | DLSTACK_ARGS2(stack) DLSTACK_ARGS1(stack), (stack)[1] |
#define | DLSTACK_ARGS3(stack) DLSTACK_ARGS2(stack), (stack)[2] |
#define | DLSTACK_ARGS4(stack) DLSTACK_ARGS3(stack), (stack)[3] |
#define | DLSTACK_ARGS5(stack) DLSTACK_ARGS4(stack), (stack)[4] |
#define | DLSTACK_ARGS6(stack) DLSTACK_ARGS5(stack), (stack)[5] |
#define | DLSTACK_ARGS7(stack) DLSTACK_ARGS6(stack), (stack)[6] |
#define | DLSTACK_ARGS8(stack) DLSTACK_ARGS7(stack), (stack)[7] |
#define | DLSTACK_ARGS9(stack) DLSTACK_ARGS8(stack), (stack)[8] |
#define | DLSTACK_ARGS10(stack) DLSTACK_ARGS9(stack), (stack)[9] |
#define | DLSTACK_ARGS11(stack) DLSTACK_ARGS10(stack), (stack)[10] |
#define | DLSTACK_ARGS12(stack) DLSTACK_ARGS11(stack), (stack)[11] |
#define | DLSTACK_ARGS13(stack) DLSTACK_ARGS12(stack), (stack)[12] |
#define | DLSTACK_ARGS14(stack) DLSTACK_ARGS13(stack), (stack)[13] |
#define | DLSTACK_ARGS15(stack) DLSTACK_ARGS14(stack), (stack)[14] |
#define | DLSTACK_ARGS16(stack) DLSTACK_ARGS15(stack), (stack)[15] |
#define | DLSTACK_ARGS17(stack) DLSTACK_ARGS16(stack), (stack)[16] |
#define | DLSTACK_ARGS18(stack) DLSTACK_ARGS17(stack), (stack)[17] |
#define | DLSTACK_ARGS19(stack) DLSTACK_ARGS18(stack), (stack)[18] |
#define | DLSTACK_ARGS20(stack) DLSTACK_ARGS19(stack), (stack)[19] |
#define | ALIGN_OF(type) offsetof(struct {char align_c; type align_x;}, align_x) |
#define | ALIGN_VOIDP ALIGN_OF(void*) |
#define | ALIGN_SHORT ALIGN_OF(short) |
#define | ALIGN_CHAR ALIGN_OF(char) |
#define | ALIGN_INT ALIGN_OF(int) |
#define | ALIGN_LONG ALIGN_OF(long) |
#define | ALIGN_FLOAT ALIGN_OF(float) |
#define | ALIGN_DOUBLE ALIGN_OF(double) |
#define | DLALIGN(ptr, offset, align) ((offset) += ((align) - ((uintptr_t)((char *)(ptr) + (offset))) % (align)) % (align)) |
#define | DLTYPE_VOID 0 |
#define | DLTYPE_VOIDP 1 |
#define | DLTYPE_CHAR 2 |
#define | DLTYPE_SHORT 3 |
#define | DLTYPE_INT 4 |
#define | DLTYPE_LONG 5 |
#define | DLTYPE_FLOAT 7 |
#define | DLTYPE_DOUBLE 8 |
#define | MAX_DLTYPE 9 |
#define | PTR2NUM(x) (ULONG2NUM((unsigned long)(x))) |
#define | NUM2PTR(x) ((void*)(NUM2ULONG(x))) |
#define | BOOL2INT(x) (((x) == Qtrue)?1:0) |
#define | INT2BOOL(x) ((x)?Qtrue:Qfalse) |
#define | CFUNC_CDECL (rbdl_id_cdecl) |
#define | CFUNC_STDCALL (rbdl_id_stdcall) |
#define | RDL_HANDLE(obj) ((struct dl_handle *)(DATA_PTR(obj))) |
#define | RCFUNC_DATA(obj) ((struct cfunc_data *)(DATA_PTR(obj))) |
#define | RPTR_DATA(obj) ((struct ptr_data *)(DATA_PTR(obj))) |
Typedefs |
typedef void(* | freefunc_t )(void *) |
Functions |
VALUE | rb_dlcfunc_new (void(*func)(), int dltype, const char *name, ID calltype) |
int | rb_dlcfunc_kind_p (VALUE func) |
VALUE | rb_dlptr_new (void *ptr, long size, freefunc_t func) |
VALUE | rb_dlptr_new2 (VALUE klass, void *ptr, long size, freefunc_t func) |
VALUE | rb_dlptr_malloc (long size, freefunc_t func) |
Variables |
VALUE | rb_mDL |
VALUE | rb_cDLHandle |
VALUE | rb_cDLSymbol |
VALUE | rb_eDLError |
VALUE | rb_eDLTypeError |
ID | rbdl_id_cdecl |
ID | rbdl_id_stdcall |