// Copyright 2016 the V8 project authors. All rights reserved. | |
// Use of this source code is governed by a BSD-style license that can be | |
// found in the LICENSE file. | |
function iterable(done) { | |
return { | |
[Symbol.iterator]: function() { | |
return { | |
next: function() { | |
if (done) return { done: true }; | |
done = true; | |
return { value: 42, done: false }; | |
} | |
} | |
} | |
} | |
} | |
var [...result] = iterable(true); | |
assertEquals([], result); | |
var [...result] = iterable(false); | |
assertEquals([42], result); |