title: Introduction icon: dot
The C-APIs are designed for these purposes:
__import__ at runtime. By using C-APIs, the module is portable across different compilers without C++ ABI compatibility issues.Our C-APIs take a lot of inspiration from the lua C-APIs.
Methods return a bool indicating if the operation succeeded or not.
Special thanks for @koltenpearson's contribution.
!!! C-APIs are always stable and backward compatible. !!!
pkpy_vm* pkpy_new_vm(bool enable_os)
Wraps new VM(enable_os) in C++.
void pkpy_delete_vm(pkpy_vm*)
Wraps delete vm in C++.
bool pkpy_exec(pkpy_vm*, const char* source)
Wraps vm->exec. Execute a string of source code.
bool pkpy_exec_2(pkpy_vm*, const char* source, const char* filename, int mode, const char* module)
Wraps vm->exec_2. Execute a string of source code with more options.