diff options
author | Damien George <damien.p.george@gmail.com> | 2014-01-09 20:57:50 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-01-09 20:57:50 +0000 |
commit | 062478e66d03cc59ed73484a3032ef5f08db12a4 (patch) | |
tree | 6d3beb59ade6fe3d1ab7a5f05ff876e63062717f /py/objdict.c | |
parent | d944a66ead38b15b5a3c7a4ae8b054451fd5c077 (diff) | |
download | micropython-062478e66d03cc59ed73484a3032ef5f08db12a4.tar.gz micropython-062478e66d03cc59ed73484a3032ef5f08db12a4.zip |
Improved type/class/instance code; mp_obj_type_t now has load_attr, store_attr.
Creating of classes (types) and instances is much more like CPython now.
You can use "type('name', (), {...})" to create classes.
Diffstat (limited to 'py/objdict.c')
-rw-r--r-- | py/objdict.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/py/objdict.c b/py/objdict.c index 20e3e570d5..1c90998585 100644 --- a/py/objdict.c +++ b/py/objdict.c @@ -287,3 +287,9 @@ mp_obj_t mp_obj_dict_store(mp_obj_t self_in, mp_obj_t key, mp_obj_t value) { mp_map_lookup(&self->map, key, MP_MAP_LOOKUP_ADD_IF_NOT_FOUND)->value = value; return self_in; } + +mp_map_t *mp_obj_dict_get_map(mp_obj_t self_in) { + assert(MP_OBJ_IS_TYPE(self_in, &dict_type)); + mp_obj_dict_t *self = self_in; + return &self->map; +} |