Kolten Pearson 8244a8a1a4 basic functionality is working much more smoothly thanks to LuaStyleFuncC
also added the code for handling python exceptions
2023-04-30 12:06:27 -06:00

42 lines
777 B
C

#include "pocketpy_c.h"
#include <stdio.h>
//tests the c bindings for pocketpy
int test_binding(pkpy_vm vm) {
pkpy_push_int(vm, 12);
return 1;
}
int main(int argc, char** argv) {
pkpy_vm vm = pkpy_vm_create(true, true);
pkpy_vm_exec(vm, "print('hello world!')");
pkpy_push_int(vm, 11);
pkpy_set_global(vm, "eleven");
pkpy_push_function(vm, test_binding);
pkpy_set_global(vm, "binding");
pkpy_vm_exec(vm, "print(eleven)");
pkpy_vm_exec(vm, "print(binding())");
pkpy_vm_exec(vm, "def x(x) : return x + 1");
pkpy_get_global(vm, "x");
pkpy_push_int(vm, 1);
pkpy_call(vm, 1);
int r;
pkpy_to_int(vm, -1, &r);
printf("%i\n", r);
pkpy_clear_error(vm, NULL);
pkpy_vm_destroy(vm);
return 0;
}