Line data Source code
1 : // Copyright 2017 the V8 project authors. All rights reserved.
2 : // Use of this source code is governed by a BSD-style license that can be
3 : // found in the LICENSE file.
4 :
5 : #include "src/builtins/builtins-utils-gen.h"
6 : #include "src/builtins/builtins.h"
7 : #include "src/code-stub-assembler.h"
8 :
9 : namespace v8 {
10 : namespace internal {
11 :
12 : // ES section #sec-reflect.has
13 168 : TF_BUILTIN(ReflectHas, CodeStubAssembler) {
14 : Node* target = Parameter(Descriptor::kTarget);
15 : Node* key = Parameter(Descriptor::kKey);
16 : Node* context = Parameter(Descriptor::kContext);
17 :
18 : ThrowIfNotJSReceiver(context, target, MessageTemplate::kCalledOnNonObject,
19 56 : "Reflect.has");
20 :
21 112 : Return(CallBuiltin(Builtins::kHasProperty, context, target, key));
22 56 : }
23 :
24 : } // namespace internal
25 94089 : } // namespace v8
|