1.1 --- a/modules.py Wed Mar 08 00:49:56 2017 +0100
1.2 +++ b/modules.py Wed Mar 08 14:53:01 2017 +0100
1.3 @@ -479,20 +479,20 @@
1.4 f.readline() # "initialised names:"
1.5 line = f.readline().rstrip()
1.6 while line:
1.7 - name, version, value = self._get_fields(line, 3)
1.8 - init_item(self.initialised_names, name, dict)
1.9 - self.initialised_names[name][int(version)] = decode_reference(value)
1.10 + path, name, version, value = self._get_fields(line, 4)
1.11 + init_item(self.initialised_names, (path, name), dict)
1.12 + self.initialised_names[(path, name)][int(version)] = decode_reference(value)
1.13 line = f.readline().rstrip()
1.14
1.15 def _get_aliased_names(self, f):
1.16 f.readline() # "aliased names:"
1.17 line = f.readline().rstrip()
1.18 while line:
1.19 - name, version, path, original_name, attrnames, number = self._get_fields(line, 6)
1.20 - init_item(self.aliased_names, name, dict)
1.21 + path, name, version, original_path, original_name, attrnames, number = self._get_fields(line, 7)
1.22 + init_item(self.aliased_names, (path, name), dict)
1.23 if number == "{}": number = None
1.24 else: number = int(number)
1.25 - self.aliased_names[name][int(version)] = (path, original_name, attrnames != "{}" and attrnames or None, number)
1.26 + self.aliased_names[(path, name)][int(version)] = (original_path, original_name, attrnames != "{}" and attrnames or None, number)
1.27 line = f.readline().rstrip()
1.28
1.29 def _get_function_parameters(self, f):
1.30 @@ -746,22 +746,22 @@
1.31 print >>f, "initialised names:"
1.32 assignments = self.initialised_names.items()
1.33 assignments.sort()
1.34 - for name, refs in assignments:
1.35 + for (path, name), refs in assignments:
1.36 versions = refs.items()
1.37 versions.sort()
1.38 for version, ref in versions:
1.39 - print >>f, name, version, ref
1.40 + print >>f, path, name, version, ref
1.41
1.42 print >>f
1.43 print >>f, "aliased names:"
1.44 assignments = self.aliased_names.items()
1.45 assignments.sort()
1.46 - for name, aliases in assignments:
1.47 + for (path, name), aliases in assignments:
1.48 versions = aliases.items()
1.49 versions.sort()
1.50 for version, alias in versions:
1.51 - path, original_name, attrnames, number = alias
1.52 - print >>f, name, version, path, original_name, attrnames or "{}", number is None and "{}" or number
1.53 + original_path, original_name, attrnames, number = alias
1.54 + print >>f, path, name, version, original_path, original_name, attrnames or "{}", number is None and "{}" or number
1.55
1.56 print >>f
1.57 print >>f, "function parameters:"