infix
A JIT-Powered FFI Library for C
|
#include <infix_internals.h>
Public Attributes | |
infix_arena_t * | arena |
The arena that owns all type metadata for this callback. | |
infix_executable_t | exec |
Handle to the executable JIT-compiled entry stub. | |
infix_protected_t | protected_ctx |
Handle to the memory where this very context struct resides. | |
infix_type * | return_type |
The infix_type of the callback's return value. | |
infix_type ** | arg_types |
An array of infix_type pointers for each argument. | |
size_t | num_args |
The total number of arguments. | |
size_t | num_fixed_args |
The number of non-variadic arguments. | |
bool | is_variadic |
True if the function signature is variadic. | |
void * | user_callback_fn |
Pointer to the user's actual C callback handler function. | |
void * | user_data |
Arbitrary user-data pointer associated with this callback. | |
infix_internal_dispatch_callback_fn | internal_dispatcher |
Pointer to the C function that bridges from assembly. | |
infix_forward_t * | cached_forward_trampoline |
A pre-compiled forward trampoline for calling a type-safe user C callback. | |
infix_arena_t* infix_reverse_t::arena |
The arena that owns all type metadata for this callback.
infix_type** infix_reverse_t::arg_types |
An array of infix_type
pointers for each argument.
infix_forward_t* infix_reverse_t::cached_forward_trampoline |
A pre-compiled forward trampoline for calling a type-safe user C callback.
If this pointer is non-NULL, it signifies a high-level "callback" created with infix_reverse_create_callback
. The dispatcher will use this trampoline to marshal arguments and call the user's type-safe C handler. If this is NULL, it signifies a low-level "closure" created with infix_reverse_create_closure
, and the dispatcher will call the generic handler directly.
infix_executable_t infix_reverse_t::exec |
Handle to the executable JIT-compiled entry stub.
infix_internal_dispatch_callback_fn infix_reverse_t::internal_dispatcher |
Pointer to the C function that bridges from assembly.
bool infix_reverse_t::is_variadic |
True if the function signature is variadic.
size_t infix_reverse_t::num_args |
The total number of arguments.
size_t infix_reverse_t::num_fixed_args |
The number of non-variadic arguments.
infix_protected_t infix_reverse_t::protected_ctx |
Handle to the memory where this very context struct resides.
infix_type* infix_reverse_t::return_type |
The infix_type
of the callback's return value.
void* infix_reverse_t::user_callback_fn |
Pointer to the user's actual C callback handler function.
void* infix_reverse_t::user_data |
Arbitrary user-data pointer associated with this callback.