mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-23 13:00:17 +00:00
...
This commit is contained in:
parent
f57dbba00f
commit
959fa9387a
@ -33,8 +33,7 @@ int main(){
|
||||
pkpy_vm_exec(vm, "a = [1, 2, 3]");
|
||||
|
||||
// 对列表进行求和
|
||||
char* result = pkpy_vm_eval(vm, "sum(a)");
|
||||
printf("%s", result); // 6
|
||||
pkpy_vm_exec(vm, "print(sum(a))");
|
||||
|
||||
// 释放资源
|
||||
pkpy_delete(result);
|
||||
|
@ -16,13 +16,6 @@ Create a virtual machine.
|
||||
|
||||
Add a source module into a virtual machine.
|
||||
|
||||
#### `char* pkpy_vm_eval(VM* vm, const char* source)`
|
||||
|
||||
Evaluate an expression.
|
||||
|
||||
Return `__repr__` of the result.
|
||||
If there is any error, return `nullptr`.
|
||||
|
||||
#### `void pkpy_vm_exec(VM* vm, const char* source)`
|
||||
|
||||
Run a given source on a virtual machine.
|
||||
|
@ -1365,18 +1365,6 @@ extern "C" {
|
||||
vm->exec(source, filename, (pkpy::CompileMode)mode, mod);
|
||||
}
|
||||
|
||||
PK_LEGACY_EXPORT
|
||||
char* pkpy_vm_eval(pkpy::VM* vm, const char* source){
|
||||
pkpy::PyObject* ret = vm->exec(source, "<eval>", pkpy::EVAL_MODE);
|
||||
if(ret == nullptr) return nullptr;
|
||||
try{
|
||||
pkpy::Str repr = pkpy::CAST(pkpy::Str&, vm->py_repr(ret));
|
||||
return repr.c_str_dup();
|
||||
}catch(...){
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
PK_LEGACY_EXPORT
|
||||
pkpy::REPL* pkpy_new_repl(pkpy::VM* vm){
|
||||
pkpy::REPL* p = new pkpy::REPL(vm);
|
||||
|
Loading…
x
Reference in New Issue
Block a user