factor/native/dll.h

27 lines
498 B
C
Raw Normal View History

2005-04-09 18:30:46 -04:00
typedef struct {
CELL header;
/* tagged string */
CELL path;
/* OS-specific handle */
void* dll;
} DLL;
2005-08-15 23:34:10 -04:00
INLINE DLL *untag_dll(CELL tagged)
{
type_check(DLL_TYPE,tagged);
return (DLL*)UNTAG(tagged);
}
2005-04-09 18:30:46 -04:00
2005-04-30 01:13:58 -04:00
void init_ffi(void);
void ffi_dlopen(DLL *dll, bool error);
void *ffi_dlsym(DLL *dll, F_STRING *symbol, bool error);
2005-04-09 18:30:46 -04:00
void ffi_dlclose(DLL *dll);
void primitive_dlopen(void);
void primitive_dlsym(void);
void primitive_dlclose(void);
void fixup_dll(DLL* dll);
void collect_dll(DLL* dll);