objtype: Wrap .__name__ handling in MICROPY_CPYTHON_COMPAT.
Because it's runtime reflection feature, not required for many apps. Rant time: Python could really use better str() vs repr() distinction, for example, repr(type) could be "<class 'foo'>" (as it is now), and str(type) just "foo". But alas, getting straight name requires adhoc attribute.
This commit is contained in:
parent
a8dda295c4
commit
b509f73982
@ -297,10 +297,12 @@ STATIC mp_obj_t type_call(mp_obj_t self_in, uint n_args, uint n_kw, const mp_obj
|
||||
STATIC void type_load_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
|
||||
assert(MP_OBJ_IS_TYPE(self_in, &mp_type_type));
|
||||
mp_obj_type_t *self = self_in;
|
||||
#if MICROPY_CPYTHON_COMPAT
|
||||
if (attr == MP_QSTR___name__) {
|
||||
dest[0] = MP_OBJ_NEW_QSTR(self->name);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
mp_obj_t member = mp_obj_class_lookup(self, attr);
|
||||
if (member != MP_OBJ_NULL) {
|
||||
// check if the methods are functions, static or class methods
|
||||
|
Loading…
Reference in New Issue
Block a user