mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
57 lines
1.2 KiB
HTML
57 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Web Console test for bug 632347 - iterators and generators</title>
|
|
<!-- Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ -->
|
|
<script type="application/javascript;version=1.8">
|
|
(function(){
|
|
function genFunc() {
|
|
var a = 5;
|
|
while (a < 10) {
|
|
yield a++;
|
|
}
|
|
}
|
|
|
|
window._container = {};
|
|
|
|
_container.gen1 = genFunc();
|
|
_container.gen1.next();
|
|
|
|
var obj = { foo: "bar", baz: "baaz", hay: "stack" };
|
|
_container.iter1 = Iterator(obj);
|
|
|
|
function Range(low, high) {
|
|
this.low = low;
|
|
this.high = high;
|
|
}
|
|
|
|
function RangeIterator(range) {
|
|
this.range = range;
|
|
this.current = this.range.low;
|
|
}
|
|
|
|
RangeIterator.prototype.next = function() {
|
|
if (this.current > this.range.high) {
|
|
throw StopIteration;
|
|
} else {
|
|
return this.current++;
|
|
}
|
|
}
|
|
|
|
Range.prototype.__iterator__ = function() {
|
|
return new RangeIterator(this);
|
|
}
|
|
|
|
_container.iter2 = new Range(3, 15);
|
|
|
|
_container.gen2 = (i * 2 for (i in _container.iter2));
|
|
})();
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<p>Web Console test for bug 632347 - iterators and generators.</p>
|
|
</body>
|
|
</html>
|