// 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);