// Copyright 2017 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. 'use strict'; var DefaultConstructorBenchmark = new BenchmarkSuite('LeafConstructors', [100], [ new Benchmark('WithExplicitArguments', false, false, 0, WithExplicitArguments), ]); const Point = class Point { constructor(x, y, z) { this.x = x; this.y = y; this.z = z; } } const klasses = [ class A extends Point { constructor(x, y, z) { super(x, y, z); } }, class B extends Point { constructor(x, y, z) { super(x, y, z); } }, class C extends Point { constructor(x, y, z) { super(x, y, z); } }, class D extends Point { constructor(x, y, z) { super(x, y, z); } }, class E extends Point { constructor(x, y, z) { super(x, y, z); } } ]; function WithExplicitArguments() { let result = null; for (const klass of klasses) { result = new klass(0, 1, 2); } return result; };