1.1 --- a/micropython/report.py Sun Jul 08 21:13:39 2012 +0200
1.2 +++ b/micropython/report.py Mon Jul 09 00:22:59 2012 +0200
1.3 @@ -67,6 +67,7 @@
1.4 .specific-ref { color: #07F; }
1.5 .str { color: #FF00FF; }
1.6 .doc { color: #FF00FF; margin-top: 1em; margin-bottom: 1em; }
1.7 + .doc.module { font-size: smaller; }
1.8
1.9 .popup {
1.10 display: none;
1.11 @@ -246,12 +247,12 @@
1.12 def _keyword(self, kw, leading=0, trailing=1):
1.13 self._reserved(kw, "keyword", leading, trailing)
1.14
1.15 - def _doc(self, node):
1.16 + def _doc(self, node, classes=None):
1.17 if node.doc is not None:
1.18 - self._docstring(node.doc)
1.19 + self._docstring(node.doc, classes)
1.20
1.21 - def _docstring(self, s):
1.22 - self.stream.write("<pre class='doc'>")
1.23 + def _docstring(self, s, classes=None):
1.24 + self.stream.write("<pre class='doc%s'>" % (classes and " %s" % classes or ""))
1.25 self.stream.write('"""')
1.26 output = textwrap.dedent(s.replace('"""', '\\"\\"\\"'))
1.27 self.stream.write(self._text(output))
1.28 @@ -379,12 +380,16 @@
1.29
1.30 "Get the output form of the values referenced by 'attr'."
1.31
1.32 - if isinstance(attr, Instance):
1.33 - return [(str(attr), attr)]
1.34 + if isinstance(attr, Const):
1.35 + return [(str(attr.get_value()), attr)]
1.36 + elif isinstance(attr, Instance):
1.37 + return []
1.38
1.39 values = []
1.40 for v in attr.get_values():
1.41 - if not isinstance(v, Instance):
1.42 + if isinstance(v, Const):
1.43 + values.append((str(v.get_value()), v))
1.44 + elif not isinstance(v, Instance):
1.45 values.append((v.full_name(), v))
1.46
1.47 values.sort()
1.48 @@ -620,6 +625,7 @@
1.49 self.stream.write(html_footer)
1.50
1.51 def visitModule(self, node):
1.52 + self._doc(node, "module")
1.53 self.default(node)
1.54
1.55 # Statements.