Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(454)

Unified Diff: utils/apidoc/html_diff.dart

Issue 10095017: added printWarnings option to HtmlDiff (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: named argument Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « utils/apidoc/apidoc.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: utils/apidoc/html_diff.dart
diff --git a/utils/apidoc/html_diff.dart b/utils/apidoc/html_diff.dart
index 37ac54563d7bd9eba61ec120e1d20070cfc6226b..34912e09154f1721df2a73c96859ff07e2f31b87 100644
--- a/utils/apidoc/html_diff.dart
+++ b/utils/apidoc/html_diff.dart
@@ -51,6 +51,9 @@ class HtmlDiff {
final CommentMap comments;
+ /** If true, then print warning messages. */
+ final bool _printWarnings;
+
static Library dom;
/**
@@ -65,13 +68,20 @@ class HtmlDiff {
dom = world.libraries['dart:dom'];
}
- HtmlDiff() :
+ HtmlDiff([bool printWarnings = false]) :
+ _printWarnings = printWarnings,
domToHtml = new Map<Member, Set<Member>>(),
htmlToDom = new Map<Member, Set<Member>>(),
domTypesToHtml = new Map<Type, Set<Type>>(),
htmlTypesToDom = new Map<Type, Set<Type>>(),
comments = new CommentMap();
+ void warn(String s) {
+ if (_printWarnings) {
+ print('Warning: ' + s);
+ }
+ }
+
/**
* Computes the `dart:dom` to `dart:html` mapping, and places it in
* [domToHtml], [htmlToDom], [domTypesToHtml], and [htmlTypesToDom]. Before
@@ -109,7 +119,7 @@ class HtmlDiff {
var domMembers = htmlToDomMembers(htmlMember, domTypes);
if (htmlMember == null && !domMembers.isEmpty()) {
- print('Warning: dart:html member ${htmlMember.declaringType.name}.' +
+ warn('dart:html member ${htmlMember.declaringType.name}.' +
'${htmlMember.name} has no corresponding dart:html member.');
}
@@ -132,7 +142,7 @@ class HtmlDiff {
if (domNames.length == 1 && domNames[0] == 'none') return [];
return map(domNames, (domName) {
final domType = dom.types[domName];
- if (domType == null) print('Warning: no dart:dom type named $domName');
+ if (domType == null) warn('no dart:dom type named $domName');
return domType;
});
}
@@ -156,11 +166,11 @@ class HtmlDiff {
var nameMembers = _membersFromName(name, domTypes);
if (nameMembers.isEmpty()) {
if (name.contains('.')) {
- print('Warning: no member $name');
+ warn('no member $name');
} else {
final options = Strings.join(
map(domTypes, (t) => "${t.name}.$name"), ' or ');
- print('Warning: no member $options');
+ warn('no member $options');
}
}
members.addAll(nameMembers);
@@ -181,7 +191,7 @@ class HtmlDiff {
Set<Member> _membersFromName(String name, List<Type> defaultTypes) {
if (!name.contains('.', 0)) {
if (defaultTypes.isEmpty()) {
- print('Warning: no default type for ${name}');
+ warn('no default type for ${name}');
return new Set();
}
final members = new Set<Member>();
@@ -193,7 +203,7 @@ class HtmlDiff {
final splitName = name.split('.');
if (splitName.length != 2) {
- print('Warning: invalid member name ${name}');
+ warn('invalid member name ${name}');
return new Set();
}
« no previous file with comments | « utils/apidoc/apidoc.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698