Backed out changeset 7272b7396c78 (bug 1932758) for causing fenix debug failures...
[gecko.git] / dom / canvas / test / webgl-conf / checkout / deqp / temp_externs / es6_collections.js
blob8be2d6daa4f5c1529570a503ccffe7468e5e9065
1 /*
2  * Copyright 2014 The Closure Compiler Authors
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
17 /**
18  * @fileoverview Definitions for ECMAScript 6.
19  * @see http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts
20  * @externs
21  */
23 // TODO(johnlenz): Use Tuples for the Map and Set iterators where appropriate.
25 /**
26  * @constructor
27  * @param {Iterable.<!Array.<KEY|VALUE>>|!Array.<!Array.<KEY|VALUE>>=} opt_iterable
28  * @implements {Iterable.<!Array.<KEY|VALUE>>}
29  * @template KEY, VALUE
30  * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
31  */
32 function Map(opt_iterable) {}
34 /** @return {void} */
35 Map.prototype.clear;
37 /**
38  * @param {KEY} key
39  * @return {boolean}
40  */
41 Map.prototype.delete;
43 /**
44  * @return {!Iterator.<!Array.<KEY|VALUE>>}
45  * @nosideeffects
46  */
47 Map.prototype.entries;
49 /**
50  * @param {function(this:THIS, VALUE, KEY, MAP):void} callback
51  * @param {THIS} thisArg
52  * @this {MAP}
53  * @template MAP,THIS
54  */
55 Map.prototype.forEach;
57 /**
58  * @param {KEY} key
59  * @return {VALUE|undefined}
60  * @nosideeffects
61  */
62 Map.prototype.get;
64 /**
65  * @param {KEY} key
66  * @return {boolean}
67  * @nosideeffects
68  */
69 Map.prototype.has;
71 /**
72  * @return {!Iterator.<KEY>}
73  */
74 Map.prototype.keys;
76 /**
77  * @param {KEY} key
78  * @param {VALUE} value
79  * @return {THIS}
80  * @this {THIS}
81  * @template THIS
82  */
83 Map.prototype.set;
85 /**
86  * @type {number}
87  * (readonly)
88  */
89 Map.prototype.size;
91 /**
92  * @return {!Iterator.<VALUE>}
93  * @nosideeffects
94  */
95 Map.prototype.values;
97 /**
98  * @return {!Iterator.<!Array.<KEY|VALUE>>}
99  */
100 Map.prototype[Symbol.iterator] = function() {};
104  * @constructor
105  * @param {Iterable.<!Array.<KEY|VALUE>>|!Array.<!Array.<KEY|VALUE>>=} opt_iterable
106  * @template KEY, VALUE
107  * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap
108  */
109 function WeakMap(opt_iterable) {}
111 /** @return {void} */
112 WeakMap.prototype.clear;
115  * @param {KEY} key
116  * @return {boolean}
117  */
118 WeakMap.prototype.delete;
121  * @param {KEY} key
122  * @return {VALUE|undefined}
123  * @nosideeffects
124  */
125 WeakMap.prototype.get;
128  * @param {KEY} key
129  * @return {boolean}
130  * @nosideeffects
131  */
132 WeakMap.prototype.has;
135  * @param {KEY} key
136  * @param {VALUE} value
137  * @return {THIS}
138  * @this {THIS}
139  * @template THIS
140  */
141 WeakMap.prototype.set;
146  * @constructor
147  * @param {Iterable.<VALUE>|Array.<VALUE>=} opt_iterable
148  * @implements {Iterable.<VALUE>}
149  * @template VALUE
150  * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
151  */
152 function Set(opt_iterable) {}
155  * @param {VALUE} value
156  * @return {THIS}
157  * @this {THIS}
158  * @template THIS
159  */
160 Set.prototype.add;
163  * @return {void}
164  */
165 Set.prototype.clear;
168  * @param {VALUE} value
169  * @return {boolean}
170  */
171 Set.prototype.delete;
174  * @return {!Iterator.<!Array.<VALUE>>} Where each array has two entries:
175  *     [value, value]
176  * @nosideeffects
177  */
178 Set.prototype.entries;
181  * @param {function(VALUE, VALUE, SET)} callback
182  * @param {THIS} thisArg
183  * @this {SET}
184  * @template SET,THIS
185  */
186 Set.prototype.forEach;
189  * @param {VALUE} value
190  * @return {boolean}
191  * @nosideeffects
192  */
193 Set.prototype.has;
196  * @type {number} (readonly)
197  */
198 Set.prototype.size;
201  * @return {!Iterator.<VALUE>}
202  * @nosideeffects
203  */
204 Set.prototype.keys;
207  * @return {!Iterator.<VALUE>}
208  * @nosideeffects
209  */
210 Set.prototype.values;
213  * @return {!Iterator.<VALUE>}
214  */
215 Set.prototype[Symbol.iterator] = function() {};
220  * @constructor
221  * @param {Iterable.<VALUE>|Array.<VALUE>=} opt_iterable
222  * @template VALUE
223  * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
224  */
225 function WeakSet(opt_iterable) {}
228  * @param {VALUE} value
229  * @return {THIS}
230  * @this {THIS}
231  * @template THIS
232  */
233 WeakSet.prototype.add;
236  * @return {void}
237  */
238 WeakSet.prototype.clear;
241  * @param {VALUE} value
242  * @return {boolean}
243  */
244 WeakSet.prototype.delete;
247  * @param {VALUE} value
248  * @return {boolean}
249  * @nosideeffects
250  */
251 WeakSet.prototype.has;