summaryrefslogtreecommitdiffstatshomepage
path: root/py/vm.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-04-05 04:17:17 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-04-05 05:11:12 +0300
commit4a088f4b6168dd8ed8edc70e82bc695d3879abec (patch)
tree12d61bc3dcde58264edeccf4a5484f8466a2472c /py/vm.c
parenta0d32991ed57ebbbb8c9207dab3223b12ca4aa44 (diff)
downloadmicropython-4a088f4b6168dd8ed8edc70e82bc695d3879abec.tar.gz
micropython-4a088f4b6168dd8ed8edc70e82bc695d3879abec.zip
map: When removing a key, don't NULL the entry, but mark as deleted.
When searching next time, such entry should be just skipped, not terminate the search. It's known that marking techique is not efficient at the presense of many removes, but namespace usage should not require many deletes, and as for user dictionaries - well, open addressing map table with linear rehashing and load factor of ~1 is not particularly efficient at all ;-). TODO: May consider "shift other entries in cluster" approach as an alternative.
Diffstat (limited to 'py/vm.c')
0 files changed, 0 insertions, 0 deletions