From 8918b6b0b3ab35181d23d4d760a6f48574c6c869 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 20 Jun 2008 16:47:45 +0000 Subject: Make the Atom cache dict private and add a docstring for _AtomCache. svn path=/main/trunk/; revision=10742 --- pym/portage/dep.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'pym') diff --git a/pym/portage/dep.py b/pym/portage/dep.py index a1908276b..bd9b19677 100644 --- a/pym/portage/dep.py +++ b/pym/portage/dep.py @@ -393,12 +393,15 @@ class _use_dep(object): return _use_dep(tokens) class _AtomCache(type): - atoms = {} + """ + Cache Atom instances from constructor calls and reuse + identical instances when available. + """ def __call__(cls, s): - instance = cls.atoms.get(s) + instance = cls._atoms.get(s) if instance is None: instance = super(_AtomCache, cls).__call__(s) - cls.atoms[s] = instance + cls._atoms[s] = instance return instance class Atom(object): @@ -409,6 +412,7 @@ class Atom(object): """ __metaclass__ = _AtomCache + _atoms = {} _str_methods = ("endswith", "find", "index", "lstrip", "replace", "startswith", "strip", "rindex", "rfind", "rstrip", "__getitem__", -- cgit v1.2.3-1-g7c22