| Index: lib/html/dart2js/html_dart2js.dart
|
| diff --git a/lib/html/dart2js/html_dart2js.dart b/lib/html/dart2js/html_dart2js.dart
|
| index 4f2bae94ce243ff19c01c51166a8768a8a4d0ef6..ff9171306277f8cae5fee320fd4c496017169680 100644
|
| --- a/lib/html/dart2js/html_dart2js.dart
|
| +++ b/lib/html/dart2js/html_dart2js.dart
|
| @@ -2242,6 +2242,8 @@ class _CSSRuleListImpl implements List<CSSRule>, JavaScriptIndexingBehavior nati
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(CSSRule element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(CSSRule element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(CSSRule element)) => _Collections.map(this, [], f);
|
| @@ -7210,6 +7212,8 @@ class _CSSValueListImpl extends _CSSValueImpl implements List<CSSValue>, JavaScr
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(CSSValue element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(CSSValue element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(CSSValue element)) => _Collections.map(this, [], f);
|
| @@ -7938,6 +7942,8 @@ class _ClientRectListImpl implements List<ClientRect>, JavaScriptIndexingBehavio
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(ClientRect element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(ClientRect element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(ClientRect element)) => _Collections.map(this, [], f);
|
| @@ -8186,7 +8192,7 @@ abstract class Console {
|
|
|
| class _ConsoleImpl
|
| // Console is sometimes a singleton bag-of-properties without a prototype.
|
| - implements Console
|
| + implements Console
|
| native "=(typeof console == 'undefined' ? {} : console)" {
|
|
|
| final _MemoryInfoImpl memory;
|
| @@ -8771,6 +8777,8 @@ class _DOMMimeTypeArrayImpl implements DOMMimeTypeArray, JavaScriptIndexingBehav
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(DOMMimeType element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(DOMMimeType element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(DOMMimeType element)) => _Collections.map(this, [], f);
|
| @@ -8939,6 +8947,8 @@ class _DOMPluginArrayImpl implements DOMPluginArray, JavaScriptIndexingBehavior
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(DOMPlugin element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(DOMPlugin element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(DOMPlugin element)) => _Collections.map(this, [], f);
|
| @@ -9205,6 +9215,8 @@ class _DOMStringListImpl implements List<String>, JavaScriptIndexingBehavior nat
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(String element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(String element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(String element)) => _Collections.map(this, [], f);
|
| @@ -10237,6 +10249,10 @@ class _FilteredElementList implements List {
|
| List<Element> get _filtered =>
|
| new List.from(_childNodes.filter((n) => n is Element));
|
|
|
| + bool contains(Element element) {
|
| + return element is Element && _childNodes.contains(element);
|
| + }
|
| +
|
| void forEach(void f(Element element)) {
|
| _filtered.forEach(f);
|
| }
|
| @@ -10703,7 +10719,7 @@ class _DocumentImpl extends _NodeImpl implements Document
|
|
|
| void webkitExitPointerLock() native;
|
|
|
| - // TODO(jacobr): implement all Element methods not on Document.
|
| + // TODO(jacobr): implement all Element methods not on Document.
|
|
|
| _ElementImpl query(String selectors) {
|
| // It is fine for our RegExp to detect element id query selectors to have
|
| @@ -11372,6 +11388,13 @@ class _ChildrenElementList implements List {
|
| return output;
|
| }
|
|
|
| + bool contains(Element element) {
|
| + for (_ElementImpl child in _childElements) {
|
| + if (child == element) return true;
|
| + }
|
| + return false;
|
| + }
|
| +
|
| void forEach(void f(Element element)) {
|
| for (_ElementImpl element in _childElements) {
|
| f(element);
|
| @@ -11379,7 +11402,7 @@ class _ChildrenElementList implements List {
|
| }
|
|
|
| List<Element> filter(bool f(Element element)) {
|
| - final output = [];
|
| + final output = <Element>[];
|
| forEach((Element element) {
|
| if (f(element)) {
|
| output.add(element);
|
| @@ -11510,6 +11533,13 @@ class _FrozenElementList implements List {
|
| return _nodeList[0];
|
| }
|
|
|
| + bool contains(Element element) {
|
| + for (Element el in this) {
|
| + if (el == element) return true;
|
| + }
|
| + return false;
|
| + }
|
| +
|
| void forEach(void f(Element element)) {
|
| for (Element el in this) {
|
| f(el);
|
| @@ -11525,7 +11555,7 @@ class _FrozenElementList implements List {
|
| }
|
|
|
| List<Element> filter(bool f(Element element)) {
|
| - final out = [];
|
| + final out = <Element>[];
|
| for (Element el in this) {
|
| if (f(el)) out.add(el);
|
| }
|
| @@ -11816,6 +11846,8 @@ class _CssClassSet implements CSSClassSet {
|
| // interface Iterable - END
|
|
|
| // interface Collection - BEGIN
|
| + bool contains(String element) => _read().contains(element);
|
| +
|
| void forEach(void f(String element)) {
|
| _read().forEach(f);
|
| }
|
| @@ -12623,6 +12655,8 @@ class _EntryArrayImpl implements List<Entry>, JavaScriptIndexingBehavior native
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Entry element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Entry element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Entry element)) => _Collections.map(this, [], f);
|
| @@ -12711,6 +12745,8 @@ class _EntryArraySyncImpl implements List<EntrySync>, JavaScriptIndexingBehavior
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(EntrySync element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(EntrySync element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(EntrySync element)) => _Collections.map(this, [], f);
|
| @@ -13531,6 +13567,8 @@ class _FileListImpl implements List<File>, JavaScriptIndexingBehavior native "*F
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(File element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(File element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(File element)) => _Collections.map(this, [], f);
|
| @@ -13909,7 +13947,7 @@ abstract class Float32Array implements ArrayBufferView, List<num> {
|
| factory Float32Array.fromList(List<num> list) =>
|
| _TypedArrayFactoryProvider.createFloat32Array_fromList(list);
|
|
|
| - factory Float32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Float32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createFloat32Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 4;
|
| @@ -13957,6 +13995,8 @@ class _Float32ArrayImpl extends _ArrayBufferViewImpl implements Float32Array, Li
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(num element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(num element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(num element)) => _Collections.map(this, [], f);
|
| @@ -14026,7 +14066,7 @@ abstract class Float64Array implements ArrayBufferView, List<num> {
|
| factory Float64Array.fromList(List<num> list) =>
|
| _TypedArrayFactoryProvider.createFloat64Array_fromList(list);
|
|
|
| - factory Float64Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Float64Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createFloat64Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 8;
|
| @@ -14074,6 +14114,8 @@ class _Float64ArrayImpl extends _ArrayBufferViewImpl implements Float64Array, Li
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(num element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(num element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(num element)) => _Collections.map(this, [], f);
|
| @@ -14503,6 +14545,8 @@ class _GamepadListImpl implements List<Gamepad>, JavaScriptIndexingBehavior nati
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Gamepad element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Gamepad element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Gamepad element)) => _Collections.map(this, [], f);
|
| @@ -14695,6 +14739,8 @@ class _HTMLAllCollectionImpl implements HTMLAllCollection, JavaScriptIndexingBeh
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Node element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Node element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Node element)) => _Collections.map(this, [], f);
|
| @@ -14805,6 +14851,8 @@ class _HTMLCollectionImpl implements HTMLCollection, JavaScriptIndexingBehavior
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Node element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Node element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Node element)) => _Collections.map(this, [], f);
|
| @@ -17055,7 +17103,7 @@ abstract class Int16Array implements ArrayBufferView, List<int> {
|
| factory Int16Array.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createInt16Array_fromList(list);
|
|
|
| - factory Int16Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Int16Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createInt16Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 2;
|
| @@ -17103,6 +17151,8 @@ class _Int16ArrayImpl extends _ArrayBufferViewImpl implements Int16Array, List<i
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(int element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(int element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(int element)) => _Collections.map(this, [], f);
|
| @@ -17172,7 +17222,7 @@ abstract class Int32Array implements ArrayBufferView, List<int> {
|
| factory Int32Array.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createInt32Array_fromList(list);
|
|
|
| - factory Int32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Int32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createInt32Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 4;
|
| @@ -17220,6 +17270,8 @@ class _Int32ArrayImpl extends _ArrayBufferViewImpl implements Int32Array, List<i
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(int element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(int element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(int element)) => _Collections.map(this, [], f);
|
| @@ -17289,7 +17341,7 @@ abstract class Int8Array implements ArrayBufferView, List<int> {
|
| factory Int8Array.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createInt8Array_fromList(list);
|
|
|
| - factory Int8Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Int8Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createInt8Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 1;
|
| @@ -17337,6 +17389,8 @@ class _Int8ArrayImpl extends _ArrayBufferViewImpl implements Int8Array, List<int
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(int element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(int element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(int element)) => _Collections.map(this, [], f);
|
| @@ -19848,6 +19902,8 @@ class _MediaStreamListImpl implements List<MediaStream>, JavaScriptIndexingBehav
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(MediaStream element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(MediaStream element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(MediaStream element)) => _Collections.map(this, [], f);
|
| @@ -20834,6 +20890,8 @@ class _NamedNodeMapImpl implements NamedNodeMap, JavaScriptIndexingBehavior nati
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Node element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Node element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Node element)) => _Collections.map(this, [], f);
|
| @@ -21278,6 +21336,8 @@ class _ChildNodeListLazy implements List {
|
|
|
| // TODO(jacobr): We can implement these methods much more efficiently by
|
| // looking up the nodeList only once instead of once per iteration.
|
| + bool contains(Node element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Node element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Node element)) => _Collections.map(this, [], f);
|
| @@ -21500,6 +21560,8 @@ class _ListWrapper<E> implements List<E> {
|
|
|
| Iterator<E> iterator() => _list.iterator();
|
|
|
| + bool contains(E element) => _list.contains(element);
|
| +
|
| void forEach(void f(E element)) => _list.forEach(f);
|
|
|
| Collection map(f(E element)) => _list.map(f);
|
| @@ -21615,6 +21677,8 @@ class _NodeListImpl implements NodeList, JavaScriptIndexingBehavior native "*Nod
|
| _parent.$dom_replaceChild(value, this[index]);
|
| }
|
|
|
| + bool contains(Node element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Node element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Node element)) => _Collections.map(this, [], f);
|
| @@ -23859,6 +23923,8 @@ class _SQLResultSetRowListImpl implements SQLResultSetRowList, JavaScriptIndexin
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Map element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Map element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Map element)) => _Collections.map(this, [], f);
|
| @@ -24364,6 +24430,8 @@ class _SVGAnimatedLengthListImpl implements SVGAnimatedLengthList, JavaScriptInd
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGAnimatedLength element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGAnimatedLength element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGAnimatedLength element)) => _Collections.map(this, [], f);
|
| @@ -24489,6 +24557,8 @@ class _SVGAnimatedNumberListImpl implements SVGAnimatedNumberList, JavaScriptInd
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGAnimatedNumber element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGAnimatedNumber element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGAnimatedNumber element)) => _Collections.map(this, [], f);
|
| @@ -24658,6 +24728,8 @@ class _SVGAnimatedTransformListImpl implements SVGAnimatedTransformList, JavaScr
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGAnimateTransformElement element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGAnimateTransformElement element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGAnimateTransformElement element)) => _Collections.map(this, [], f);
|
| @@ -25512,6 +25584,8 @@ class _SVGElementInstanceListImpl implements List<SVGElementInstance>, JavaScrip
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGElementInstance element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGElementInstance element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGElementInstance element)) => _Collections.map(this, [], f);
|
| @@ -27532,6 +27606,8 @@ class _SVGLengthListImpl implements SVGLengthList, JavaScriptIndexingBehavior na
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGLength element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGLength element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGLength element)) => _Collections.map(this, [], f);
|
| @@ -28126,6 +28202,8 @@ class _SVGNumberListImpl implements SVGNumberList, JavaScriptIndexingBehavior na
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGNumber element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGNumber element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGNumber element)) => _Collections.map(this, [], f);
|
| @@ -29041,6 +29119,8 @@ class _SVGPathSegListImpl implements SVGPathSegList, JavaScriptIndexingBehavior
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGPathSeg element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGPathSeg element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGPathSeg element)) => _Collections.map(this, [], f);
|
| @@ -30072,6 +30152,8 @@ class _SVGStringListImpl implements SVGStringList, JavaScriptIndexingBehavior na
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(String element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(String element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(String element)) => _Collections.map(this, [], f);
|
| @@ -30727,6 +30809,8 @@ class _SVGTransformListImpl implements SVGTransformList, JavaScriptIndexingBehav
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SVGTransform element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SVGTransform element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SVGTransform element)) => _Collections.map(this, [], f);
|
| @@ -31666,6 +31750,8 @@ class _SourceBufferListImpl implements SourceBufferList, JavaScriptIndexingBehav
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SourceBuffer element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SourceBuffer element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SourceBuffer element)) => _Collections.map(this, [], f);
|
| @@ -31850,6 +31936,8 @@ class _SpeechGrammarListImpl implements SpeechGrammarList, JavaScriptIndexingBeh
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SpeechGrammar element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SpeechGrammar element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SpeechGrammar element)) => _Collections.map(this, [], f);
|
| @@ -31981,6 +32069,8 @@ class _SpeechInputResultListImpl implements List<SpeechInputResult>, JavaScriptI
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SpeechInputResult element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SpeechInputResult element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SpeechInputResult element)) => _Collections.map(this, [], f);
|
| @@ -32317,6 +32407,8 @@ class _SpeechRecognitionResultListImpl implements List<SpeechRecognitionResult>,
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(SpeechRecognitionResult element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(SpeechRecognitionResult element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(SpeechRecognitionResult element)) => _Collections.map(this, [], f);
|
| @@ -32701,6 +32793,8 @@ class _StyleSheetListImpl implements List<StyleSheet>, JavaScriptIndexingBehavio
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(StyleSheet element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(StyleSheet element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(StyleSheet element)) => _Collections.map(this, [], f);
|
| @@ -33593,6 +33687,8 @@ class _TextTrackCueListImpl implements TextTrackCueList, JavaScriptIndexingBehav
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(TextTrackCue element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(TextTrackCue element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(TextTrackCue element)) => _Collections.map(this, [], f);
|
| @@ -33754,6 +33850,8 @@ class _TextTrackListImpl implements TextTrackList, JavaScriptIndexingBehavior na
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(TextTrack element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(TextTrack element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(TextTrack element)) => _Collections.map(this, [], f);
|
| @@ -34042,6 +34140,8 @@ class _TouchListImpl implements TouchList, JavaScriptIndexingBehavior native "*T
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Touch element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Touch element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Touch element)) => _Collections.map(this, [], f);
|
| @@ -34368,7 +34468,7 @@ abstract class Uint16Array implements ArrayBufferView, List<int> {
|
| factory Uint16Array.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createUint16Array_fromList(list);
|
|
|
| - factory Uint16Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Uint16Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createUint16Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 2;
|
| @@ -34416,6 +34516,8 @@ class _Uint16ArrayImpl extends _ArrayBufferViewImpl implements Uint16Array, List
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(int element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(int element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(int element)) => _Collections.map(this, [], f);
|
| @@ -34485,7 +34587,7 @@ abstract class Uint32Array implements ArrayBufferView, List<int> {
|
| factory Uint32Array.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createUint32Array_fromList(list);
|
|
|
| - factory Uint32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Uint32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createUint32Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 4;
|
| @@ -34533,6 +34635,8 @@ class _Uint32ArrayImpl extends _ArrayBufferViewImpl implements Uint32Array, List
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(int element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(int element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(int element)) => _Collections.map(this, [], f);
|
| @@ -34602,7 +34706,7 @@ abstract class Uint8Array implements ArrayBufferView, List<int> {
|
| factory Uint8Array.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createUint8Array_fromList(list);
|
|
|
| - factory Uint8Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Uint8Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createUint8Array_fromBuffer(buffer, byteOffset, length);
|
|
|
| static const int BYTES_PER_ELEMENT = 1;
|
| @@ -34650,6 +34754,8 @@ class _Uint8ArrayImpl extends _ArrayBufferViewImpl implements Uint8Array, List<i
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(int element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(int element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(int element)) => _Collections.map(this, [], f);
|
| @@ -34719,7 +34825,7 @@ abstract class Uint8ClampedArray implements Uint8Array {
|
| factory Uint8ClampedArray.fromList(List<int> list) =>
|
| _TypedArrayFactoryProvider.createUint8ClampedArray_fromList(list);
|
|
|
| - factory Uint8ClampedArray.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| + factory Uint8ClampedArray.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]) =>
|
| _TypedArrayFactoryProvider.createUint8ClampedArray_fromBuffer(buffer, byteOffset, length);
|
|
|
| /** @domName Uint8ClampedArray.length */
|
| @@ -36637,6 +36743,8 @@ class _WebKitAnimationListImpl implements List<Animation>, JavaScriptIndexingBeh
|
| throw const UnsupportedOperationException("Cannot add to immutable List.");
|
| }
|
|
|
| + bool contains(Animation element) => _Collections.contains(this, element);
|
| +
|
| void forEach(void f(Animation element)) => _Collections.forEach(this, f);
|
|
|
| Collection map(f(Animation element)) => _Collections.map(this, [], f);
|
| @@ -38852,6 +38960,13 @@ get _timerFactoryClosure => (int milliSeconds, void callback(Timer timer), bool
|
| * method.
|
| */
|
| class _Collections {
|
| + static bool contains(Iterable<Object> iterable, Object element) {
|
| + for (final e in iterable) {
|
| + if (e == element) return true;
|
| + }
|
| + return false;
|
| + }
|
| +
|
| static void forEach(Iterable<Object> iterable, void f(Object o)) {
|
| for (final e in iterable) {
|
| f(e);
|
| @@ -39008,7 +39123,7 @@ class _RemoteSendPortSync implements SendPortSync {
|
| }
|
|
|
| static _call(int isolateId, int portId, var message) {
|
| - var target = 'dart-port-$isolateId-$portId';
|
| + var target = 'dart-port-$isolateId-$portId';
|
| // TODO(vsm): Make this re-entrant.
|
| // TODO(vsm): Set this up set once, on the first call.
|
| var source = '$target-result';
|
| @@ -39073,13 +39188,13 @@ class ReceivePortSync {
|
| static int get _isolateId {
|
| // TODO(vsm): Make this coherent with existing isolate code.
|
| if (_cachedIsolateId == null) {
|
| - _cachedIsolateId = _getNewIsolateId();
|
| + _cachedIsolateId = _getNewIsolateId();
|
| }
|
| return _cachedIsolateId;
|
| }
|
|
|
| static String _getListenerName(isolateId, portId) =>
|
| - 'dart-port-$isolateId-$portId';
|
| + 'dart-port-$isolateId-$portId';
|
| String get _listenerName => _getListenerName(_isolateId, _portId);
|
|
|
| void receive(callback(var message)) {
|
| @@ -40588,7 +40703,6 @@ class _VariableSizeListIterator<T> implements Iterator<T> {
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| class _Lists {
|
| -
|
| /**
|
| * Returns the index in the array [a] of the given [element], starting
|
| * the search at index [startIndex] to [endIndex] (exclusive).
|
|
|