1.1 --- a/micropython/__init__.py Sun Nov 22 21:21:41 2009 +0100
1.2 +++ b/micropython/__init__.py Sun Nov 22 22:53:24 2009 +0100
1.3 @@ -447,16 +447,17 @@
1.4 self.name_references[from_name] = set()
1.5 self.name_references[from_name].add(names)
1.6
1.7 - def use_specific_name(self, specific_name, from_name):
1.8 + def use_specific_name(self, objname, attrname, from_name):
1.9
1.10 """
1.11 - Register the given 'specific_name' for an object as being used in the
1.12 - program from within an object with the specified 'from_name'.
1.13 + Register the given 'objname' (for an object) whose 'attrname' is being
1.14 + used in the program from within an object with the specified
1.15 + 'from_name'.
1.16 """
1.17
1.18 if not self.specific_name_references.has_key(from_name):
1.19 self.specific_name_references[from_name] = set()
1.20 - self.specific_name_references[from_name].add(specific_name)
1.21 + self.specific_name_references[from_name].add((objname, attrname))
1.22
1.23 # Name accounting products.
1.24
1.25 @@ -517,9 +518,9 @@
1.26
1.27 # Get specific name references and visit the referenced objects.
1.28
1.29 - for name in self.specific_name_references.get(from_name, []):
1.30 - self.use_attribute(from_name, name)
1.31 - self._collect_attributes(from_name + "." + name, objtable)
1.32 + for objname, attrname in self.specific_name_references.get(from_name, []):
1.33 + self.use_attribute(objname, attrname)
1.34 + self._collect_attributes(objname + "." + attrname, objtable)
1.35
1.36 # Constant accounting.
1.37