diff options
author | Damien George <damien.p.george@gmail.com> | 2014-12-27 17:07:16 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-12-27 17:33:30 +0000 |
commit | e37dcaafb43c1246ab55d79ebb8889a61f280533 (patch) | |
tree | 79b86304793ac4d2396c7bc8a24209459e3eaf1a /py/map.c | |
parent | 3b74c91684e6dfc785bf33ba03e520470f59059e (diff) | |
download | micropython-e37dcaafb43c1246ab55d79ebb8889a61f280533.tar.gz micropython-e37dcaafb43c1246ab55d79ebb8889a61f280533.zip |
py: Allow to properly disable builtin "set" object.
This patch makes MICROPY_PY_BUILTINS_SET compile-time option fully
disable the builtin set object (when set to 0). This includes removing
set constructor/comprehension from the grammar, the compiler and the
emitters. Now, enabling set costs 8168 bytes on unix x64, and 3576
bytes on stmhal.
Diffstat (limited to 'py/map.c')
-rw-r--r-- | py/map.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -253,6 +253,8 @@ mp_map_elem_t* mp_map_lookup(mp_map_t *map, mp_obj_t index, mp_map_lookup_kind_t /******************************************************************************/ /* set */ +#if MICROPY_PY_BUILTINS_SET + void mp_set_init(mp_set_t *set, mp_uint_t n) { set->alloc = n; set->used = 0; @@ -368,6 +370,8 @@ void mp_set_clear(mp_set_t *set) { set->table = NULL; } +#endif // MICROPY_PY_BUILTINS_SET + #if defined(DEBUG_PRINT) && DEBUG_PRINT void mp_map_dump(mp_map_t *map) { for (mp_uint_t i = 0; i < map->alloc; i++) { |