mirror of
https://github.com/micropython/micropython.git
synced 2025-12-16 09:50:15 +01:00
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.
This commit is contained in:
4
py/map.c
4
py/map.c
@@ -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++) {
|
||||
|
||||
Reference in New Issue
Block a user