1.1 --- a/micropython/report.py Sun Sep 12 21:42:34 2010 +0200
1.2 +++ b/micropython/report.py Sun Sep 12 21:54:04 2010 +0200
1.3 @@ -261,15 +261,7 @@
1.4
1.5 def _assname(self, name, node):
1.6 self._span_start("assname")
1.7 - if hasattr(node, "_attrnames") and node._attrnames.get(name):
1.8 - attrnames = node._attrnames[name]
1.9 - self._name_start()
1.10 - self.stream.write(name)
1.11 - self._popup_start()
1.12 - self._attrnames(attrnames)
1.13 - self._popup_end()
1.14 - self._name_end()
1.15 - else:
1.16 + if not self._attrcombined(name, node):
1.17 self._span(name)
1.18 self._span_end()
1.19
1.20 @@ -303,6 +295,24 @@
1.21 first = 0
1.22 self.stream.write("</div>\n")
1.23
1.24 + def _attrcombined(self, name, node):
1.25 + attrcombined = hasattr(node, "_attrcombined") and node._attrcombined.get(name) or []
1.26 +
1.27 + for attrnames in attrcombined:
1.28 + if attrnames:
1.29 + break
1.30 + else:
1.31 + return 0
1.32 +
1.33 + self._name_start()
1.34 + self.stream.write(name)
1.35 + self._popup_start()
1.36 + for attrnames in attrcombined:
1.37 + self._attrnames(attrnames)
1.38 + self._popup_end()
1.39 + self._name_end()
1.40 + return 1
1.41 +
1.42 def _attrnames(self, attrnames):
1.43 self._names_list(attrnames, "attributes", "attrnames")
1.44