88c8361b8f
This patch removes Promise functions and methods which are absent from the ES2015 specification when the --es-staging flag is on. The patch is being relanded after being reverted due to an unrelated bug. This version is slightly different as promise_chain is installed on the context regardless of the flag value, so that the Promise::Chain API continues to work until it is deprecated. BUG=v8:3237 R=rossberg LOG=Y Review URL: https://codereview.chromium.org/1513873002 Cr-Commit-Position: refs/heads/master@{#32772}
20 lines
473 B
JavaScript
20 lines
473 B
JavaScript
// Copyright 2015 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: --promise-extra
|
|
|
|
'use strict';
|
|
|
|
Object.defineProperties(Object.prototype, {
|
|
promise: {set: assertUnreachable},
|
|
reject: {set: assertUnreachable},
|
|
resolve: {set: assertUnreachable},
|
|
});
|
|
|
|
class P extends Promise {}
|
|
|
|
P.all([Promise.resolve('ok')]);
|
|
P.race([Promise.resolve('ok')]);
|
|
P.defer();
|