mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-21 12:00:18 +00:00
...
This commit is contained in:
parent
c0dc98042e
commit
d0a26c5a09
@ -49,7 +49,7 @@ PK_EXPORT bool pkpy_is_bool(pkpy_vm*, int i);
|
|||||||
PK_EXPORT bool pkpy_to_bool(pkpy_vm*, int i, bool* out);
|
PK_EXPORT bool pkpy_to_bool(pkpy_vm*, int i, bool* out);
|
||||||
|
|
||||||
// string
|
// string
|
||||||
PK_EXPORT bool pkpy_push_string(pkpy_vm*, const char*);
|
PK_EXPORT bool pkpy_push_string(pkpy_vm*, pkpy_CString);
|
||||||
PK_EXPORT bool pkpy_is_string(pkpy_vm*, int i);
|
PK_EXPORT bool pkpy_is_string(pkpy_vm*, int i);
|
||||||
PK_EXPORT bool pkpy_to_string(pkpy_vm*, int i, pkpy_CString* out);
|
PK_EXPORT bool pkpy_to_string(pkpy_vm*, int i, pkpy_CString* out);
|
||||||
|
|
||||||
@ -88,6 +88,7 @@ PK_EXPORT bool pkpy_vectorcall(pkpy_vm*, int argc);
|
|||||||
|
|
||||||
/* Special APIs */
|
/* Special APIs */
|
||||||
PK_EXPORT void pkpy_free(void* p);
|
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_CName pkpy_name(const char*);
|
||||||
PK_EXPORT void pkpy_compile_to_string(pkpy_vm*, const char* source, const char* filename, int mode, bool* ok, char** out);
|
PK_EXPORT void pkpy_compile_to_string(pkpy_vm*, const char* source, const char* filename, int mode, bool* ok, char** out);
|
||||||
|
|
||||||
|
@ -216,10 +216,10 @@ bool pkpy_to_bool(pkpy_vm* vm_handle, int i, bool* out){
|
|||||||
}
|
}
|
||||||
|
|
||||||
// string
|
// string
|
||||||
bool pkpy_push_string(pkpy_vm* vm_handle, const char* value) {
|
bool pkpy_push_string(pkpy_vm* vm_handle, pkpy_CString value) {
|
||||||
VM* vm = (VM*) vm_handle;
|
VM* vm = (VM*) vm_handle;
|
||||||
PK_ASSERT_NO_ERROR()
|
PK_ASSERT_NO_ERROR()
|
||||||
PyObject* res = py_var(vm, value);
|
PyObject* res = py_var(vm, std::string_view(value.data, value.size));
|
||||||
vm->s_data.push(res);
|
vm->s_data.push(res);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -483,6 +483,13 @@ void pkpy_free(void* p){
|
|||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pkpy_CString pkpy_string(const char* value){
|
||||||
|
pkpy_CString s;
|
||||||
|
s.data = value;
|
||||||
|
s.size = strlen(value);
|
||||||
|
return s;
|
||||||
|
}
|
||||||
|
|
||||||
pkpy_CName pkpy_name(const char* name){
|
pkpy_CName pkpy_name(const char* name){
|
||||||
return StrName(name).index;
|
return StrName(name).index;
|
||||||
}
|
}
|
||||||
|
@ -49,7 +49,7 @@ std::string f_input(){
|
|||||||
static int f_input(pkpy_vm* vm){
|
static int f_input(pkpy_vm* vm){
|
||||||
bool eof;
|
bool eof;
|
||||||
std::string output = pkpy_platform_getline(&eof);
|
std::string output = pkpy_platform_getline(&eof);
|
||||||
pkpy_push_string(vm, output.c_str());
|
pkpy_push_string(vm, pkpy_string(output.c_str()));
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user