Browse Source

map: Add mp_map_dump() (#ifdef'ed) to be handy when debugging maps.

pull/431/head
Paul Sokolovsky 11 years ago
parent
commit
e3f58c8380
  1. 14
      py/map.c
  2. 1
      py/obj.h

14
py/map.c

@ -243,3 +243,17 @@ void mp_set_clear(mp_set_t *set) {
set->used = 0;
set->table = NULL;
}
#if DEBUG_PRINT
void mp_map_dump(mp_map_t *map) {
for (int i = 0; i < map->alloc; i++) {
if (map->table[i].key != NULL) {
mp_obj_print(map->table[i].key, PRINT_REPR);
} else {
printf("(nil)");
}
printf(": %p\n", map->table[i].value);
}
printf("---\n");
}
#endif

1
py/obj.h

@ -117,6 +117,7 @@ void mp_map_deinit(mp_map_t *map);
void mp_map_free(mp_map_t *map);
mp_map_elem_t* mp_map_lookup(mp_map_t *map, mp_obj_t index, mp_map_lookup_kind_t lookup_kind);
void mp_map_clear(mp_map_t *map);
void mp_map_dump(mp_map_t *map);
// Underlying set implementation (not set object)

Loading…
Cancel
Save