29#if defined(_WIN32) && defined(PHASOR_FFI_BUILD_DLL)
30 #define PHASOR_FFI_EXPORT __declspec(dllexport)
31#elif defined(__GNUC__) || defined(__clang__)
32 #define PHASOR_FFI_EXPORT __attribute__((visibility("default")))
34 #define PHASOR_FFI_EXPORT
static double phasor_to_float(PhasorValue val)
static bool phasor_is_bool(PhasorValue val)
PhasorValue(* PhasorNativeFunction)(PhasorVM *vm, int argc, const PhasorValue *argv)
static bool phasor_to_bool(PhasorValue val)
static bool phasor_is_string(PhasorValue val)
static const char * phasor_to_string(PhasorValue val)
static bool phasor_is_number(PhasorValue val)
struct PhasorValue PhasorValue
static int64_t phasor_to_int(PhasorValue val)
void(* PhasorRegisterFunction)(PhasorVM *vm, const char *name, PhasorNativeFunction func)
PHASOR_FFI_EXPORT void phasor_plugin_entry(const PhasorAPI *api, PhasorVM *vm)
The one and only entry point for a Phasor plugin.
static PhasorValue phasor_make_array(const PhasorValue *elements, size_t count)
static PhasorValue phasor_make_float(double f)
static PhasorValue phasor_make_string(const char *s)
static bool phasor_is_int(PhasorValue val)
static PhasorValue phasor_make_null()
static bool phasor_is_array(PhasorValue val)
static PhasorValue phasor_make_bool(bool b)
static bool phasor_is_null(PhasorValue val)
static PhasorValue phasor_make_int(int64_t i)
static bool phasor_is_float(PhasorValue val)
#define PHASOR_FFI_EXPORT
PhasorRegisterFunction register_function
struct PhasorValue::@257106260015165034006071221344325333366100147341::@324103060207145140324203224012174236216253240107 a
const PhasorValue * elements
union PhasorValue::@257106260015165034006071221344325333366100147341 as