LCOV - code coverage report
Current view: top level - src/builtins - builtins-proxy-gen.h (source / functions) Hit Total Coverage
Test: app.info Lines: 1 1 100.0 %
Date: 2017-10-20 Functions: 0 0 -

          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             : #ifndef V8_BUILTINS_BUILTINS_PROXY_GEN_H_
       6             : #define V8_BUILTINS_BUILTINS_PROXY_GEN_H_
       7             : 
       8             : #include "src/code-stub-assembler.h"
       9             : 
      10             : namespace v8 {
      11             : namespace internal {
      12             : using compiler::Node;
      13             : 
      14             : class ProxiesCodeStubAssembler : public CodeStubAssembler {
      15             :  public:
      16             :   explicit ProxiesCodeStubAssembler(compiler::CodeAssemblerState* state)
      17         186 :       : CodeStubAssembler(state) {}
      18             : 
      19             :   // ES6 section 9.5.8 [[Get]] ( P, Receiver )
      20             :   // name should not be an index.
      21             :   Node* ProxyGetProperty(Node* context, Node* proxy, Node* name,
      22             :                          Node* receiver);
      23             : 
      24             :   // ES6 section 9.5.9 [[Set]] ( P, V, Receiver )
      25             :   // name should not be an index.
      26             :   Node* ProxySetProperty(Node* context, Node* proxy, Node* name, Node* value,
      27             :                          Node* receiver);
      28             : 
      29             :  protected:
      30             :   void GotoIfRevokedProxy(Node* object, Label* if_proxy_revoked);
      31             :   Node* AllocateProxy(Node* target, Node* handler, Node* context);
      32             :   Node* AllocateJSArrayForCodeStubArguments(Node* context,
      33             :                                             CodeStubArguments& args, Node* argc,
      34             :                                             ParameterMode mode);
      35             :   void CheckHasTrapResult(Node* context, Node* target, Node* proxy, Node* name,
      36             :                           Label* check_passed, Label* if_bailout);
      37             : 
      38             :   void CheckGetSetTrapResult(Node* context, Node* target, Node* proxy,
      39             :                              Node* name, Node* trap_result, Label* if_not_found,
      40             :                              JSProxy::AccessKind access_kind);
      41             : };
      42             : 
      43             : }  // namespace internal
      44             : }  // namespace v8
      45             : 
      46             : #endif  // V8_BUILTINS_BUILTINS_PROXY_GEN_H_

Generated by: LCOV version 1.10