summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2006-12-10 11:41:17 +0000
committerZac Medico <zmedico@gentoo.org>2006-12-10 11:41:17 +0000
commitb2bb670b019ad5e15097578bec75ea36ff5586d6 (patch)
tree9bfcea121ac62f12f1c291fc1eb325a407566401 /pym/portage_dep.py
parentMake sure the SLOT comes from the vardb instead of the portdb (for multislot,... (diff)
downloadportage-multirepo-b2bb670b019ad5e15097578bec75ea36ff5586d6.tar.gz
portage-multirepo-b2bb670b019ad5e15097578bec75ea36ff5586d6.tar.bz2
portage-multirepo-b2bb670b019ad5e15097578bec75ea36ff5586d6.zip
To minimize memory consumption and maximize performance, use hash values for cache keys.
svn path=/main/trunk/; revision=5260
Diffstat (limited to 'pym/portage_dep.py')
-rw-r--r--pym/portage_dep.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/pym/portage_dep.py b/pym/portage_dep.py
index d665507a..5eacb836 100644
--- a/pym/portage_dep.py
+++ b/pym/portage_dep.py
@@ -501,7 +501,8 @@ def match_from_list(mydep, candidate_list):
"""
global _match_from_list_cache
- mylist = _match_from_list_cache.get((mydep, tuple(candidate_list)), None)
+ mylist = _match_from_list_cache.get(
+ hash((mydep, tuple(candidate_list))), None)
if mylist is not None:
return mylist[:]
@@ -600,5 +601,5 @@ def match_from_list(mydep, candidate_list):
else:
raise KeyError("Unknown operator: %s" % mydep)
- _match_from_list_cache[(mydep, tuple(candidate_list))] = mylist
+ _match_from_list_cache[hash((mydep, tuple(candidate_list)))] = mylist
return mylist