#include #include #include #include int main(int argc, const char **argv) { fx_value_type arg_types[] = { FX_VALUE_TYPE_CSTR, }; fx_function *func = fx_function_create( "printf", FX_FUNCTION_F_VARARG, (fx_function_impl)printf, arg_types, 1, FX_VALUE_TYPE_INT); fx_value args[] = { FX_VALUE_CSTR("Hello %s! You are number %lf\n"), FX_VALUE_CSTR("Jonh"), FX_VALUE_DOUBLE(2.5), }; fx_function_bind(func, args, sizeof args / sizeof args[0]); fx_value result = FX_VALUE_EMPTY; int r = fx_function_invoke(func, NULL, 0, &result); printf("%" PRIdPTR "\n", result.v_int); return 0; }