| // Copyright 2019 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. |
| |
| #include 'src/builtins/builtins-proxy-gen.h' |
| |
| namespace proxy { |
| |
| extern macro ProxiesCodeStubAssembler::AllocateProxy(implicit context: Context)( |
| JSReceiver, JSReceiver): JSProxy; |
| |
| extern transitioning macro ProxiesCodeStubAssembler::CheckGetSetTrapResult( |
| implicit context: Context)( |
| JSReceiver, JSProxy, Name, Object, constexpr int31); |
| |
| extern transitioning macro ProxiesCodeStubAssembler::CheckDeleteTrapResult( |
| implicit context: Context)(JSReceiver, JSProxy, Name); |
| |
| extern transitioning macro ProxiesCodeStubAssembler::CheckHasTrapResult( |
| implicit context: Context)(JSReceiver, JSProxy, Name); |
| |
| const kProxyGet: constexpr int31 |
| generates 'JSProxy::AccessKind::kGet'; |
| const kProxySet: constexpr int31 |
| generates 'JSProxy::AccessKind::kSet'; |
| |
| type ProxyRevokeFunctionContext extends FunctionContext; |
| extern enum ProxyRevokeFunctionContextSlot extends intptr |
| constexpr 'ProxiesCodeStubAssembler::ProxyRevokeFunctionContextSlot' { |
| kProxySlot: Slot<ProxyRevokeFunctionContext, JSProxy|Null>, |
| kProxyContextLength |
| } |
| } |