Chromium Code Reviews| Index: client/html/scripts/html_doc.dart |
| diff --git a/client/html/scripts/html_doc.dart b/client/html/scripts/html_doc.dart |
| index ee7364d74edb5550ad4d88e9a7639eaf4c445769..7d8f7a767804b57dccf964d393a090c101f84be0 100644 |
| --- a/client/html/scripts/html_doc.dart |
| +++ b/client/html/scripts/html_doc.dart |
| @@ -25,17 +25,33 @@ void main() { |
| var files = new NodeFileSystem(); |
| parseOptions('../../frog', [] /* args */, files); |
| initializeWorld(files); |
| - doc.initializeDartDoc(); |
| + final htmldoc = new Htmldoc(); |
| HtmlDiff.initialize(); |
| _diff = new HtmlDiff(); |
| _diff.run(); |
| world.reset(); |
| - doc.addMethodDocumenter(addMemberDoc); |
| - doc.addFieldDocumenter(addMemberDoc); |
| - doc.addTypeDocumenter(addTypeDoc); |
| - doc.document('html'); |
| + htmldoc.document('html'); |
| +} |
| + |
| +class Htmldoc extends doc.Dartdoc { |
| + getTypeComment(Type type) { |
| + return mergeComments(super.getTypeComment(type), getTypeDoc(type)); |
| + } |
| + |
| + getMethodComment(MethodMember method) { |
| + return mergeComments(super.getMethodComment(method), getMemberDoc(method)); |
| + } |
| + |
| + getFieldComment(FieldMember field) { |
| + return mergeComments(super.getFieldComment(field), getMemberDoc(field)); |
| + } |
| + |
| + String mergeComments(String comment, String extra) { |
|
nweiz
2011/12/15 19:39:04
Nit: seems like this wants to be private
Bob Nystrom
2011/12/15 20:20:11
Done.
|
| + if (comment == null) return extra; |
| + return '$comment\n\n$extra'; |
| + } |
| } |
| /** |
| @@ -81,7 +97,7 @@ Set<Member> _unifyProperties(Set<Member> members) { |
| * to the corresponding `dart:html` or `dart:dom` [Member](s). If [member] is |
| * not in `dart:html` or `dart:dom`, returns no additional documentation. |
| */ |
| -String addMemberDoc(Member member) { |
| +String getMemberDoc(Member member) { |
| if (_diff.domToHtml.containsKey(member)) { |
| final htmlMemberSet = _unifyProperties(_diff.domToHtml[member]); |
| final allSameName = htmlMemberSet.every((m) => _diff.sameName(member, m)); |
| @@ -106,7 +122,7 @@ String addMemberDoc(Member member) { |
| * the corresponding `dart:html` or `dart:dom` [Type](s). If [type] is not in |
| * `dart:html` or `dart:dom`, returns no additional documentation. |
| */ |
| -String addTypeDoc(Type type) { |
| +String getTypeDoc(Type type) { |
| if (_diff.domTypesToHtml.containsKey(type)) { |
| var htmlTypes = doc.joinWithCommas( |
| map(_diff.domTypesToHtml[type], _linkType)); |