|
infix
A JIT-Powered FFI Library for C
|
Internal definition of a forward trampoline handle. More...
#include <infix_internals.h>
Public Attributes | |
| infix_arena_t * | arena |
| bool | is_external_arena |
| infix_executable_t | exec |
| infix_type * | return_type |
| infix_type ** | arg_types |
| size_t | num_args |
| size_t | num_fixed_args |
| void * | target_fn |
Internal definition of a forward trampoline handle.
This is the concrete implementation of the opaque infix_forward_t pointer returned to the user. It is a self-contained object that owns all memory and metadata required for its operation. The type information (return_type, arg_types) is a deep copy stored in the trampoline's private arena, ensuring its lifetime is independent of the types used to create it.
| infix_arena_t* infix_forward_t::arena |
Private or shared arena holding all type metadata for this trampoline.
| infix_type** infix_forward_t::arg_types |
A deep copy of the function's argument types.
| infix_executable_t infix_forward_t::exec |
The executable memory containing the JIT-compiled code.
| bool infix_forward_t::is_external_arena |
True if the arena is user-provided and should not be freed by infix_forward_destroy.
| size_t infix_forward_t::num_args |
The total number of arguments.
| size_t infix_forward_t::num_fixed_args |
The number of non-variadic arguments.
| infix_type* infix_forward_t::return_type |
A deep copy of the function's return type.
| void* infix_forward_t::target_fn |
The target C function pointer (for bound trampolines), or nullptr for unbound.