mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-19 19:10:17 +00:00
...
This commit is contained in:
parent
db321abdae
commit
6d415472e0
@ -27,35 +27,35 @@ PK_EXPORT bool pkpy_exec(pkpy_vm*, const char* source);
|
||||
PK_EXPORT bool pkpy_exec_2(pkpy_vm*, const char* source, const char* filename, int mode, const char* module);
|
||||
|
||||
/* Stack Manipulation */
|
||||
PK_EXPORT bool pkpy_dup(pkpy_vm*, int);
|
||||
PK_EXPORT bool pkpy_pop(pkpy_vm*, int);
|
||||
PK_EXPORT bool pkpy_dup(pkpy_vm*, int i);
|
||||
PK_EXPORT bool pkpy_pop(pkpy_vm*, int n);
|
||||
PK_EXPORT bool pkpy_pop_top(pkpy_vm*);
|
||||
PK_EXPORT bool pkpy_dup_top(pkpy_vm*);
|
||||
PK_EXPORT bool pkpy_rot_two(pkpy_vm*);
|
||||
PK_EXPORT int pkpy_stack_size(pkpy_vm*);
|
||||
|
||||
// int
|
||||
PK_EXPORT bool pkpy_push_int(pkpy_vm*, int);
|
||||
PK_EXPORT bool pkpy_push_int(pkpy_vm*, int val);
|
||||
PK_EXPORT bool pkpy_is_int(pkpy_vm*, int i);
|
||||
PK_EXPORT bool pkpy_to_int(pkpy_vm*, int i, int* out);
|
||||
|
||||
// float
|
||||
PK_EXPORT bool pkpy_push_float(pkpy_vm*, float);
|
||||
PK_EXPORT bool pkpy_push_float(pkpy_vm*, float val);
|
||||
PK_EXPORT bool pkpy_is_float(pkpy_vm*, int i);
|
||||
PK_EXPORT bool pkpy_to_float(pkpy_vm*, int i, float* out);
|
||||
|
||||
// bool
|
||||
PK_EXPORT bool pkpy_push_bool(pkpy_vm*, bool);
|
||||
PK_EXPORT bool pkpy_push_bool(pkpy_vm*, bool val);
|
||||
PK_EXPORT bool pkpy_is_bool(pkpy_vm*, int i);
|
||||
PK_EXPORT bool pkpy_to_bool(pkpy_vm*, int i, bool* out);
|
||||
|
||||
// string
|
||||
PK_EXPORT bool pkpy_push_string(pkpy_vm*, pkpy_CString);
|
||||
PK_EXPORT bool pkpy_push_string(pkpy_vm*, pkpy_CString val);
|
||||
PK_EXPORT bool pkpy_is_string(pkpy_vm*, int i);
|
||||
PK_EXPORT bool pkpy_to_string(pkpy_vm*, int i, pkpy_CString* out);
|
||||
|
||||
// void_p
|
||||
PK_EXPORT bool pkpy_push_voidp(pkpy_vm*, void*);
|
||||
PK_EXPORT bool pkpy_push_voidp(pkpy_vm*, void* val);
|
||||
PK_EXPORT bool pkpy_is_voidp(pkpy_vm*, int i);
|
||||
PK_EXPORT bool pkpy_to_voidp(pkpy_vm*, int i, void** out);
|
||||
|
||||
@ -65,21 +65,21 @@ PK_EXPORT bool pkpy_is_none(pkpy_vm*, int i);
|
||||
|
||||
// special push
|
||||
PK_EXPORT bool pkpy_push_null(pkpy_vm*);
|
||||
PK_EXPORT bool pkpy_push_function(pkpy_vm*, const char*, pkpy_CFunction);
|
||||
PK_EXPORT bool pkpy_push_module(pkpy_vm*, const char*);
|
||||
PK_EXPORT bool pkpy_push_function(pkpy_vm*, const char* sig, pkpy_CFunction);
|
||||
PK_EXPORT bool pkpy_push_module(pkpy_vm*, const char* name);
|
||||
|
||||
// some opt
|
||||
PK_EXPORT bool pkpy_getattr(pkpy_vm*, pkpy_CName);
|
||||
PK_EXPORT bool pkpy_setattr(pkpy_vm*, pkpy_CName);
|
||||
PK_EXPORT bool pkpy_getglobal(pkpy_vm*, pkpy_CName);
|
||||
PK_EXPORT bool pkpy_setglobal(pkpy_vm*, pkpy_CName);
|
||||
PK_EXPORT bool pkpy_getattr(pkpy_vm*, pkpy_CName name);
|
||||
PK_EXPORT bool pkpy_setattr(pkpy_vm*, pkpy_CName name);
|
||||
PK_EXPORT bool pkpy_getglobal(pkpy_vm*, pkpy_CName name);
|
||||
PK_EXPORT bool pkpy_setglobal(pkpy_vm*, pkpy_CName name);
|
||||
PK_EXPORT bool pkpy_eval(pkpy_vm*, const char* source);
|
||||
PK_EXPORT bool pkpy_unpack_sequence(pkpy_vm*, int size);
|
||||
PK_EXPORT bool pkpy_get_unbound_method(pkpy_vm*, pkpy_CName);
|
||||
PK_EXPORT bool pkpy_get_unbound_method(pkpy_vm*, pkpy_CName name);
|
||||
PK_EXPORT bool pkpy_py_repr(pkpy_vm*);
|
||||
|
||||
/* Error Handling */
|
||||
PK_EXPORT bool pkpy_error(pkpy_vm*, const char* name, pkpy_CString);
|
||||
PK_EXPORT bool pkpy_error(pkpy_vm*, const char* name, pkpy_CString msg);
|
||||
PK_EXPORT bool pkpy_check_error(pkpy_vm*);
|
||||
PK_EXPORT bool pkpy_clear_error(pkpy_vm*, char** message);
|
||||
|
||||
@ -88,9 +88,9 @@ PK_EXPORT bool pkpy_vectorcall(pkpy_vm*, int argc);
|
||||
|
||||
/* Special APIs */
|
||||
PK_EXPORT void pkpy_free(void* p);
|
||||
PK_EXPORT pkpy_CString pkpy_string(const char*);
|
||||
PK_EXPORT pkpy_CName pkpy_name(const char*);
|
||||
PK_EXPORT pkpy_CString pkpy_name_to_string(pkpy_CName);
|
||||
PK_EXPORT pkpy_CString pkpy_string(const char* s);
|
||||
PK_EXPORT pkpy_CName pkpy_name(const char* s);
|
||||
PK_EXPORT pkpy_CString pkpy_name_to_string(pkpy_CName name);
|
||||
PK_EXPORT void pkpy_compile_to_string(pkpy_vm*, const char* source, const char* filename, int mode, bool* ok, char** out);
|
||||
|
||||
/* REPL */
|
||||
|
@ -13,6 +13,9 @@ for line in lines:
|
||||
assert body.endswith(";")
|
||||
body = body[:-1]
|
||||
|
||||
if '(pkpy_vm*' in body:
|
||||
body = body.replace('(pkpy_vm*', '(pkpy_vm* vm')
|
||||
|
||||
if ret == 'void':
|
||||
mock_string = ''
|
||||
else:
|
||||
@ -22,7 +25,7 @@ for line in lines:
|
||||
ret + ' ' + body + ' {\n' + mock_string + '\n}\n'
|
||||
)
|
||||
|
||||
with open('src2/pocketpy_c.cpp', 'w') as f:
|
||||
with open('src2/pocketpy_c.c', 'w') as f:
|
||||
f.write('''
|
||||
#include "pocketpy_c.h"
|
||||
|
||||
|
@ -10,206 +10,206 @@ pkpy_vm* pkpy_new_vm(bool enable_os) {
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
void pkpy_delete_vm(pkpy_vm*) {
|
||||
void pkpy_delete_vm(pkpy_vm* vm) {
|
||||
|
||||
}
|
||||
|
||||
bool pkpy_exec(pkpy_vm*, const char* source) {
|
||||
bool pkpy_exec(pkpy_vm* vm, const char* source) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_exec_2(pkpy_vm*, const char* source, const char* filename, int mode, const char* module) {
|
||||
bool pkpy_exec_2(pkpy_vm* vm, const char* source, const char* filename, int mode, const char* module) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_dup(pkpy_vm*, int) {
|
||||
bool pkpy_dup(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_pop(pkpy_vm*, int) {
|
||||
bool pkpy_pop(pkpy_vm* vm, int n) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_pop_top(pkpy_vm*) {
|
||||
bool pkpy_pop_top(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_dup_top(pkpy_vm*) {
|
||||
bool pkpy_dup_top(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_rot_two(pkpy_vm*) {
|
||||
bool pkpy_rot_two(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
int pkpy_stack_size(pkpy_vm*) {
|
||||
int pkpy_stack_size(pkpy_vm* vm) {
|
||||
int returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_int(pkpy_vm*, int) {
|
||||
bool pkpy_push_int(pkpy_vm* vm, int val) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_is_int(pkpy_vm*, int i) {
|
||||
bool pkpy_is_int(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_to_int(pkpy_vm*, int i, int* out) {
|
||||
bool pkpy_to_int(pkpy_vm* vm, int i, int* out) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_float(pkpy_vm*, float) {
|
||||
bool pkpy_push_float(pkpy_vm* vm, float val) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_is_float(pkpy_vm*, int i) {
|
||||
bool pkpy_is_float(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_to_float(pkpy_vm*, int i, float* out) {
|
||||
bool pkpy_to_float(pkpy_vm* vm, int i, float* out) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_bool(pkpy_vm*, bool) {
|
||||
bool pkpy_push_bool(pkpy_vm* vm, bool val) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_is_bool(pkpy_vm*, int i) {
|
||||
bool pkpy_is_bool(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_to_bool(pkpy_vm*, int i, bool* out) {
|
||||
bool pkpy_to_bool(pkpy_vm* vm, int i, bool* out) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_string(pkpy_vm*, pkpy_CString) {
|
||||
bool pkpy_push_string(pkpy_vm* vm, pkpy_CString val) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_is_string(pkpy_vm*, int i) {
|
||||
bool pkpy_is_string(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_to_string(pkpy_vm*, int i, pkpy_CString* out) {
|
||||
bool pkpy_to_string(pkpy_vm* vm, int i, pkpy_CString* out) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_voidp(pkpy_vm*, void*) {
|
||||
bool pkpy_push_voidp(pkpy_vm* vm, void* val) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_is_voidp(pkpy_vm*, int i) {
|
||||
bool pkpy_is_voidp(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_to_voidp(pkpy_vm*, int i, void** out) {
|
||||
bool pkpy_to_voidp(pkpy_vm* vm, int i, void** out) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_none(pkpy_vm*) {
|
||||
bool pkpy_push_none(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_is_none(pkpy_vm*, int i) {
|
||||
bool pkpy_is_none(pkpy_vm* vm, int i) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_null(pkpy_vm*) {
|
||||
bool pkpy_push_null(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_function(pkpy_vm*, const char*, pkpy_CFunction) {
|
||||
bool pkpy_push_function(pkpy_vm* vm, const char* sig, pkpy_CFunction) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_push_module(pkpy_vm*, const char*) {
|
||||
bool pkpy_push_module(pkpy_vm* vm, const char* name) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_getattr(pkpy_vm*, pkpy_CName) {
|
||||
bool pkpy_getattr(pkpy_vm* vm, pkpy_CName name) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_setattr(pkpy_vm*, pkpy_CName) {
|
||||
bool pkpy_setattr(pkpy_vm* vm, pkpy_CName name) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_getglobal(pkpy_vm*, pkpy_CName) {
|
||||
bool pkpy_getglobal(pkpy_vm* vm, pkpy_CName name) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_setglobal(pkpy_vm*, pkpy_CName) {
|
||||
bool pkpy_setglobal(pkpy_vm* vm, pkpy_CName name) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_eval(pkpy_vm*, const char* source) {
|
||||
bool pkpy_eval(pkpy_vm* vm, const char* source) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_unpack_sequence(pkpy_vm*, int size) {
|
||||
bool pkpy_unpack_sequence(pkpy_vm* vm, int size) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_get_unbound_method(pkpy_vm*, pkpy_CName) {
|
||||
bool pkpy_get_unbound_method(pkpy_vm* vm, pkpy_CName name) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_py_repr(pkpy_vm*) {
|
||||
bool pkpy_py_repr(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_error(pkpy_vm*, const char* name, pkpy_CString) {
|
||||
bool pkpy_error(pkpy_vm* vm, const char* name, pkpy_CString msg) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_check_error(pkpy_vm*) {
|
||||
bool pkpy_check_error(pkpy_vm* vm) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_clear_error(pkpy_vm*, char** message) {
|
||||
bool pkpy_clear_error(pkpy_vm* vm, char** message) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
bool pkpy_vectorcall(pkpy_vm*, int argc) {
|
||||
bool pkpy_vectorcall(pkpy_vm* vm, int argc) {
|
||||
bool returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
@ -218,26 +218,26 @@ void pkpy_free(void* p) {
|
||||
|
||||
}
|
||||
|
||||
pkpy_CString pkpy_string(const char*) {
|
||||
pkpy_CString pkpy_string(const char* s) {
|
||||
pkpy_CString returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
pkpy_CName pkpy_name(const char*) {
|
||||
pkpy_CName pkpy_name(const char* s) {
|
||||
pkpy_CName returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
pkpy_CString pkpy_name_to_string(pkpy_CName) {
|
||||
pkpy_CString pkpy_name_to_string(pkpy_CName name) {
|
||||
pkpy_CString returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
void pkpy_compile_to_string(pkpy_vm*, const char* source, const char* filename, int mode, bool* ok, char** out) {
|
||||
void pkpy_compile_to_string(pkpy_vm* vm, const char* source, const char* filename, int mode, bool* ok, char** out) {
|
||||
|
||||
}
|
||||
|
||||
void* pkpy_new_repl(pkpy_vm* vm) {
|
||||
void* pkpy_new_repl(pkpy_vm* vm vm) {
|
||||
void* returnValue;
|
||||
return returnValue;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user