Line data Source code
1 : #ifndef V8_TORQUE_PROXY_FROM_DSL_BASE_H__
2 : #define V8_TORQUE_PROXY_FROM_DSL_BASE_H__
3 :
4 : #include "src/compiler/code-assembler.h"
5 : #include "src/code-stub-assembler.h"
6 : #include "src/utils.h"
7 : #include "torque-generated/class-definitions-from-dsl.h"
8 :
9 : namespace v8 {
10 : namespace internal {
11 :
12 224 : class ProxyBuiltinsFromDSLAssembler {
13 : public:
14 224 : explicit ProxyBuiltinsFromDSLAssembler(compiler::CodeAssemblerState* state) : state_(state), ca_(state) { USE(state_, ca_); }
15 : compiler::TNode<JSProxy> AllocateProxy(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_target, compiler::TNode<JSReceiver> p_handler);
16 : compiler::TNode<JSFunction> AllocateProxyRevokeFunction(compiler::TNode<Context> p_context, compiler::TNode<JSProxy> p_proxy);
17 : compiler::TNode<BoolT> IsRevokedProxy(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o);
18 : compiler::TNode<JSProxy> ValidateProxy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::TNode<String> p_method);
19 : private:
20 : compiler::CodeAssemblerState* const state_;
21 : compiler::CodeAssembler ca_;
22 : };
23 :
24 : } // namespace internal
25 : } // namespace v8
26 :
27 : #endif // V8_TORQUE_PROXY_FROM_DSL_BASE_H__
|