diff --git a/scripts/genstub.py b/scripts/genstub.py new file mode 100644 index 00000000..a071a2b2 --- /dev/null +++ b/scripts/genstub.py @@ -0,0 +1,34 @@ +import os + +with open('include/pocketpy/pocketpy_c.h') as f: + lines = f.readlines() + +a = [] +for line in lines: + if line.startswith("PK_EXPORT"): + _, ret, *body = line.split() + else: + continue + body = ' '.join(body) + assert body.endswith(";") + body = body[:-1] + + if ret == 'void': + mock_string = '' + else: + mock_string = ' '*4 + ret + ' returnValue;\n return returnValue;' + + a.append( + ret + ' ' + body + ' {\n' + mock_string + '\n}\n' + ) + +with open('src2/pocketpy_c.cpp', 'w') as f: + f.write(''' +#include "pocketpy_c.h" + +#ifdef _WIN32 +#pragma warning(disable: 4700) +#endif + +''') + f.write('\n'.join(a)) \ No newline at end of file diff --git a/src2/pocketpy_c.cpp b/src2/pocketpy_c.cpp index ed9a4a04..b3e13c63 100644 --- a/src2/pocketpy_c.cpp +++ b/src2/pocketpy_c.cpp @@ -1,17 +1,17 @@ -/* autogenerated code. Do not edit */ #include "pocketpy_c.h" #ifdef _WIN32 #pragma warning(disable: 4700) #endif - + pkpy_vm* pkpy_new_vm(bool enable_os) { pkpy_vm* returnValue; return returnValue; } void pkpy_delete_vm(pkpy_vm*) { + } bool pkpy_exec(pkpy_vm*, const char* source) { @@ -24,6 +24,11 @@ bool pkpy_exec_2(pkpy_vm*, const char* source, const char* filename, int mode, c return returnValue; } +bool pkpy_dup(pkpy_vm*, int) { + bool returnValue; + return returnValue; +} + bool pkpy_pop(pkpy_vm*, int) { bool returnValue; return returnValue; @@ -184,7 +189,7 @@ bool pkpy_get_unbound_method(pkpy_vm*, pkpy_CName) { return returnValue; } -bool pkpy_py_repr(pkpy_vm*, int i) { +bool pkpy_py_repr(pkpy_vm*) { bool returnValue; return returnValue; } @@ -210,6 +215,7 @@ bool pkpy_vectorcall(pkpy_vm*, int argc) { } void pkpy_free(void* p) { + } pkpy_CString pkpy_string(const char*) { @@ -228,6 +234,7 @@ pkpy_CString pkpy_name_to_string(pkpy_CName) { } void pkpy_compile_to_string(pkpy_vm*, const char* source, const char* filename, int mode, bool* ok, char** out) { + } void* pkpy_new_repl(pkpy_vm* vm) { @@ -241,4 +248,5 @@ bool pkpy_repl_input(void* r, const char* line) { } void pkpy_delete_repl(void* repl) { + }