diff options
author | Damien George <damien.p.george@gmail.com> | 2018-07-08 22:27:39 +1000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2018-07-08 22:27:39 +1000 |
commit | 4cd853fbd286703a7eb3fb5a453e112e4712f622 (patch) | |
tree | 49311e7cc9e7089733601c93e6e745290528384c /py | |
parent | d9cdb880ff9588c7e7f9c9374d2b333187cb990f (diff) | |
download | micropython-4cd853fbd286703a7eb3fb5a453e112e4712f622.tar.gz micropython-4cd853fbd286703a7eb3fb5a453e112e4712f622.zip |
py/objmodule: Make mp_obj_module_get_globals an inline function.
Because this function is simple it saves code size to have it inlined.
Being an auxiliary helper function (and only used in the py/ core) the
argument should always be an mp_obj_module_t*, so there's no need for the
assert (and having it would require including assert.h in obj.h).
Diffstat (limited to 'py')
-rw-r--r-- | py/obj.h | 4 | ||||
-rw-r--r-- | py/objmodule.c | 6 |
2 files changed, 3 insertions, 7 deletions
@@ -804,7 +804,9 @@ typedef struct _mp_obj_module_t { mp_obj_base_t base; mp_obj_dict_t *globals; } mp_obj_module_t; -mp_obj_dict_t *mp_obj_module_get_globals(mp_obj_t self_in); +static inline mp_obj_dict_t *mp_obj_module_get_globals(mp_obj_t module) { + return ((mp_obj_module_t*)MP_OBJ_TO_PTR(module))->globals; +} // check if given module object is a package bool mp_obj_is_package(mp_obj_t module); diff --git a/py/objmodule.c b/py/objmodule.c index 7ec66adf3b..d2a67ffb83 100644 --- a/py/objmodule.c +++ b/py/objmodule.c @@ -122,12 +122,6 @@ mp_obj_t mp_obj_new_module(qstr module_name) { return MP_OBJ_FROM_PTR(o); } -mp_obj_dict_t *mp_obj_module_get_globals(mp_obj_t self_in) { - assert(MP_OBJ_IS_TYPE(self_in, &mp_type_module)); - mp_obj_module_t *self = MP_OBJ_TO_PTR(self_in); - return self->globals; -} - /******************************************************************************/ // Global module table and related functions |