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

Side by Side Diff: tools/dom/templates/html/impl/impl_Element.darttemplate

Issue 13704017: Make html lists print a nice toString method. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/dom/src/WrappedList.dart ('k') | tools/dom/templates/html/impl/impl_Node.darttemplate » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of $LIBRARYNAME; 5 part of $LIBRARYNAME;
6 6
7 // TODO(jacobr): use _Lists.dart to remove some of the duplicated 7 // TODO(jacobr): use _Lists.dart to remove some of the duplicated
8 // functionality. 8 // functionality.
9 class _ChildrenElementList implements List { 9 class _ChildrenElementList implements List {
10 // Raw Element. 10 // Raw Element.
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 return IterableMixinWorkaround.min(this, compare); 275 return IterableMixinWorkaround.min(this, compare);
276 } 276 }
277 277
278 Element max([int compare(Element a, Element b)]) { 278 Element max([int compare(Element a, Element b)]) {
279 return IterableMixinWorkaround.max(this, compare); 279 return IterableMixinWorkaround.max(this, compare);
280 } 280 }
281 281
282 Map<int, Element> asMap() { 282 Map<int, Element> asMap() {
283 return IterableMixinWorkaround.asMapList(this); 283 return IterableMixinWorkaround.asMapList(this);
284 } 284 }
285
286 String toString() {
287 StringBuffer buffer = new StringBuffer('[');
288 buffer.writeAll(this, ', ');
289 buffer.write(']');
290 return buffer.toString();
291 }
285 } 292 }
286 293
287 // TODO(jacobr): this is an inefficient implementation but it is hard to see 294 // TODO(jacobr): this is an inefficient implementation but it is hard to see
288 // a better option given that we cannot quite force NodeList to be an 295 // a better option given that we cannot quite force NodeList to be an
289 // ElementList as there are valid cases where a NodeList JavaScript object 296 // ElementList as there are valid cases where a NodeList JavaScript object
290 // contains Node objects that are not Elements. 297 // contains Node objects that are not Elements.
291 class _FrozenElementList implements List { 298 class _FrozenElementList implements List {
292 final List<Node> _nodeList; 299 final List<Node> _nodeList;
293 300
294 _FrozenElementList._wrap(this._nodeList); 301 _FrozenElementList._wrap(this._nodeList);
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
485 return IterableMixinWorkaround.min(this, compare); 492 return IterableMixinWorkaround.min(this, compare);
486 } 493 }
487 494
488 Element max([int compare(Element a, Element b)]) { 495 Element max([int compare(Element a, Element b)]) {
489 return IterableMixinWorkaround.max(this, compare); 496 return IterableMixinWorkaround.max(this, compare);
490 } 497 }
491 498
492 Map<int, Element> asMap() { 499 Map<int, Element> asMap() {
493 return IterableMixinWorkaround.asMapList(this); 500 return IterableMixinWorkaround.asMapList(this);
494 } 501 }
502
503 String toString() {
504 StringBuffer buffer = new StringBuffer('[');
505 buffer.writeAll(this, ', ');
506 buffer.write(']');
507 return buffer.toString();
508 }
495 } 509 }
496 510
497 class _FrozenElementListIterator implements Iterator<Element> { 511 class _FrozenElementListIterator implements Iterator<Element> {
498 final _FrozenElementList _list; 512 final _FrozenElementList _list;
499 int _index = -1; 513 int _index = -1;
500 Element _current; 514 Element _current;
501 515
502 _FrozenElementListIterator(this._list); 516 _FrozenElementListIterator(this._list);
503 517
504 /** 518 /**
(...skipping 467 matching lines...) Expand 10 before | Expand all | Expand 10 after
972 } else if (JS('bool', '!!#.mozMatchesSelector', this)) { 986 } else if (JS('bool', '!!#.mozMatchesSelector', this)) {
973 return JS('bool', '#.mozMatchesSelector(#)', this, selectors); 987 return JS('bool', '#.mozMatchesSelector(#)', this, selectors);
974 } else if (JS('bool', '!!#.msMatchesSelector', this)) { 988 } else if (JS('bool', '!!#.msMatchesSelector', this)) {
975 return JS('bool', '#.msMatchesSelector(#)', this, selectors); 989 return JS('bool', '#.msMatchesSelector(#)', this, selectors);
976 } 990 }
977 throw new UnsupportedError("Not supported on this platform"); 991 throw new UnsupportedError("Not supported on this platform");
978 } 992 }
979 $else 993 $else
980 $endif 994 $endif
981 995
996 /**
997 * Print out a String representation of this Element. By default, this is
998 * this Element's tagName.
999 */
1000 String toString() => this.tagName;
1001
982 $!MEMBERS 1002 $!MEMBERS
983 } 1003 }
984 1004
985 final _START_TAG_REGEXP = new RegExp('<(\\w+)'); 1005 final _START_TAG_REGEXP = new RegExp('<(\\w+)');
986 class _ElementFactoryProvider { 1006 class _ElementFactoryProvider {
987 static const _CUSTOM_PARENT_TAG_MAP = const { 1007 static const _CUSTOM_PARENT_TAG_MAP = const {
988 'body' : 'html', 1008 'body' : 'html',
989 'head' : 'html', 1009 'head' : 'html',
990 'caption' : 'table', 1010 'caption' : 'table',
991 'td': 'tr', 1011 'td': 'tr',
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
1131 const ScrollAlignment._internal(this._value); 1151 const ScrollAlignment._internal(this._value);
1132 toString() => 'ScrollAlignment.$_value'; 1152 toString() => 'ScrollAlignment.$_value';
1133 1153
1134 /// Attempt to align the element to the top of the scrollable area. 1154 /// Attempt to align the element to the top of the scrollable area.
1135 static const TOP = const ScrollAlignment._internal('TOP'); 1155 static const TOP = const ScrollAlignment._internal('TOP');
1136 /// Attempt to center the element in the scrollable area. 1156 /// Attempt to center the element in the scrollable area.
1137 static const CENTER = const ScrollAlignment._internal('CENTER'); 1157 static const CENTER = const ScrollAlignment._internal('CENTER');
1138 /// Attempt to align the element to the bottom of the scrollable area. 1158 /// Attempt to align the element to the bottom of the scrollable area.
1139 static const BOTTOM = const ScrollAlignment._internal('BOTTOM'); 1159 static const BOTTOM = const ScrollAlignment._internal('BOTTOM');
1140 } 1160 }
OLDNEW
« no previous file with comments | « tools/dom/src/WrappedList.dart ('k') | tools/dom/templates/html/impl/impl_Node.darttemplate » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698