mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 11:30:18 +00:00
...
This commit is contained in:
parent
5729c0f377
commit
692f3c5266
34
scripts/genstub.py
Normal file
34
scripts/genstub.py
Normal file
@ -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))
|
@ -1,4 +1,3 @@
|
|||||||
/* autogenerated code. Do not edit */
|
|
||||||
|
|
||||||
#include "pocketpy_c.h"
|
#include "pocketpy_c.h"
|
||||||
|
|
||||||
@ -12,6 +11,7 @@ pkpy_vm* pkpy_new_vm(bool enable_os) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void pkpy_delete_vm(pkpy_vm*) {
|
void pkpy_delete_vm(pkpy_vm*) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool pkpy_exec(pkpy_vm*, const char* source) {
|
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;
|
return returnValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool pkpy_dup(pkpy_vm*, int) {
|
||||||
|
bool returnValue;
|
||||||
|
return returnValue;
|
||||||
|
}
|
||||||
|
|
||||||
bool pkpy_pop(pkpy_vm*, int) {
|
bool pkpy_pop(pkpy_vm*, int) {
|
||||||
bool returnValue;
|
bool returnValue;
|
||||||
return returnValue;
|
return returnValue;
|
||||||
@ -184,7 +189,7 @@ bool pkpy_get_unbound_method(pkpy_vm*, pkpy_CName) {
|
|||||||
return returnValue;
|
return returnValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool pkpy_py_repr(pkpy_vm*, int i) {
|
bool pkpy_py_repr(pkpy_vm*) {
|
||||||
bool returnValue;
|
bool returnValue;
|
||||||
return returnValue;
|
return returnValue;
|
||||||
}
|
}
|
||||||
@ -210,6 +215,7 @@ bool pkpy_vectorcall(pkpy_vm*, int argc) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void pkpy_free(void* p) {
|
void pkpy_free(void* p) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pkpy_CString pkpy_string(const char*) {
|
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_compile_to_string(pkpy_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) {
|
||||||
@ -241,4 +248,5 @@ bool pkpy_repl_input(void* r, const char* line) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void pkpy_delete_repl(void* repl) {
|
void pkpy_delete_repl(void* repl) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user