1
2// Copyright 2017 the V8 project authors. All rights reserved.
3// Use of this source code is governed by a BSD-style license that can be
4// found in the LICENSE file.
5
6#include "src/code-stub-assembler.h"
7
8namespace v8 {
9namespace internal {
10
11class ObjectBuiltinsAssembler : public CodeStubAssembler {
12 public:
13  explicit ObjectBuiltinsAssembler(compiler::CodeAssemblerState* state)
14      : CodeStubAssembler(state) {}
15
16  std::tuple<Node*, Node*, Node*> EmitForInPrepare(Node* object, Node* context,
17                                                   Label* call_runtime,
18                                                   Label* nothing_to_iterate);
19
20 protected:
21  void IsString(Node* object, Label* if_string, Label* if_notstring);
22  void ReturnToStringFormat(Node* context, Node* string);
23};
24
25}  // namespace internal
26}  // namespace v8
27