mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 03:20:18 +00:00
...
This commit is contained in:
parent
366ff866d4
commit
e1b2bda6aa
@ -88,7 +88,7 @@ PK_EXPORT bool pkpy_is_none(pkpy_vm*, int i);
|
||||
|
||||
+ `bool pkpy_getattr(pkpy_vm*, pkpy_CName name)`
|
||||
|
||||
Push `b.<name>` onto the stack.
|
||||
Push `b.<name>` onto the stack. Return false if the attribute is not found.
|
||||
|
||||
```
|
||||
[b] -> [b.<name>]
|
||||
@ -105,7 +105,7 @@ PK_EXPORT bool pkpy_is_none(pkpy_vm*, int i);
|
||||
|
||||
+ `bool pkpy_getglobal(pkpy_vm*, pkpy_CName name)`
|
||||
|
||||
Push a global variable onto the stack.
|
||||
Push a global/builtin variable onto the stack. Return false if the variable is not found.
|
||||
|
||||
```
|
||||
[] -> [value]
|
||||
|
@ -384,9 +384,8 @@ bool pkpy_getattr(pkpy_vm* vm_handle, pkpy_CName name) {
|
||||
PK_ASSERT_NO_ERROR()
|
||||
PK_ASSERT_N_EXTRA_ELEMENTS(1)
|
||||
PyObject* o = vm->s_data.top();
|
||||
PK_PROTECTED(
|
||||
o = vm->getattr(o, StrName(name));
|
||||
)
|
||||
o = vm->getattr(o, StrName(name), false);
|
||||
if(o == nullptr) return false;
|
||||
vm->s_data.top() = o;
|
||||
return true;
|
||||
}
|
||||
@ -411,10 +410,7 @@ bool pkpy_getglobal(pkpy_vm* vm_handle, pkpy_CName name) {
|
||||
PyObject* o = vm->_main->attr().try_get(StrName(name));
|
||||
if (o == nullptr) {
|
||||
o = vm->builtins->attr().try_get(StrName(name));
|
||||
if (o == nullptr){
|
||||
pkpy_error(vm_handle, "NameError", pkpy_name_to_string(name));
|
||||
return false;
|
||||
}
|
||||
if (o == nullptr) return false;
|
||||
}
|
||||
vm->s_data.push(o);
|
||||
return true;
|
||||
|
Loading…
x
Reference in New Issue
Block a user