mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-19 19:10:17 +00:00
add vm->eval
This commit is contained in:
parent
8b3504cc2e
commit
a01d1a5057
@ -168,6 +168,7 @@ public:
|
||||
PyObject* find_name_in_mro(PyObject* cls, StrName name);
|
||||
bool isinstance(PyObject* obj, Type cls_t);
|
||||
PyObject* exec(Str source, Str filename, CompileMode mode, PyObject* _module=nullptr);
|
||||
PyObject* eval(Str source, PyObject* _module=nullptr);
|
||||
|
||||
template<typename ...Args>
|
||||
PyObject* _exec(Args&&... args){
|
||||
|
@ -114,6 +114,10 @@ namespace pkpy{
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
PyObject* VM::eval(Str source, PyObject* _module){
|
||||
return exec(source, "<eval>", EVAL_MODE, _module);
|
||||
}
|
||||
|
||||
PyObject* VM::new_type_object(PyObject* mod, StrName name, Type base, bool subclass_enabled){
|
||||
PyObject* obj = heap._new<Type>(tp_type, _all_types.size());
|
||||
const PyTypeInfo& base_info = _all_types[base];
|
||||
|
Loading…
x
Reference in New Issue
Block a user