5#ifndef V8_D8_ASYNC_HOOKS_WRAPPER_H_
6#define V8_D8_ASYNC_HOOKS_WRAPPER_H_
void set_before_function(v8::Local< v8::Function > value)
void set_after_function(v8::Local< v8::Function > value)
Persistent< v8::Function > after_function_
void set_promiseResolve_function(v8::Local< v8::Function > value)
static constexpr internal::ExternalPointerTag kManagedTag
v8::Local< v8::Function > after_function() const
v8::Local< v8::Function > before_function() const
v8::Local< v8::Function > promiseResolve_function() const
void set_init_function(v8::Local< v8::Function > value)
AsyncHooksWrap(Isolate *isolate)
v8::Local< v8::Function > init_function() const
Persistent< v8::Function > init_function_
Persistent< v8::Function > promiseResolve_function_
Persistent< v8::Function > before_function_
std::stack< AsyncContext > asyncContexts
static void PromiseHookDispatch(PromiseHookType type, Local< Promise > promise, Local< Value > parent, const AsyncHooksWrap &wrap, AsyncHooks *hooks)
Persistent< ObjectTemplate > async_hooks_templ
v8::Isolate * v8_isolate_
bool skip_after_termination_
Persistent< FunctionTemplate > async_hook_ctor
async_id_t current_async_id
Persistent< Private > trigger_id_symbol
std::vector< std::shared_ptr< AsyncHooksWrap > > async_wraps_
async_id_t GetTriggerAsyncId() const
AsyncHooks(Isolate *isolate)
async_id_t GetExecutionAsyncId() const
Persistent< Private > async_id_symbol
static void ShellPromiseHook(PromiseHookType type, Local< Promise > promise, Local< Value > parent)
Local< Object > CreateHook(const v8::FunctionCallbackInfo< v8::Value > &info)
async_id_t execution_async_id
async_id_t trigger_async_id