nodejs/deps/v8/test/mjsunit/get-iterator.js

24 lines
648 B
JavaScript
Raw Permalink Normal View History

// Copyright 2024 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.
//
// Flags: --allow-natives-syntax
function get_iterator(o) {
try {
[a] = o;
return a;
} catch (e) {
return e;
}
}
%PrepareFunctionForOptimization(get_iterator);
const error1 = get_iterator(true);
const error2 = get_iterator(42);
const val1 = get_iterator([17]);
%OptimizeFunctionOnNextCall(get_iterator);
assertEquals(error1.message, get_iterator(true).message);
assertEquals(error2.message, get_iterator(42).message);
assertEquals(val1, get_iterator([17]));