xref: /aosp_15_r20/external/pdfium/fxjs/xfa/cfxjse_isolatetracker.cpp (revision 3ac0a46f773bac49fa9476ec2b1cf3f8da5ec3a4)
1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2018 The PDFium Authors
2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file.
4*3ac0a46fSAndroid Build Coastguard Worker 
5*3ac0a46fSAndroid Build Coastguard Worker // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6*3ac0a46fSAndroid Build Coastguard Worker 
7*3ac0a46fSAndroid Build Coastguard Worker #include "fxjs/xfa/cfxjse_isolatetracker.h"
8*3ac0a46fSAndroid Build Coastguard Worker 
9*3ac0a46fSAndroid Build Coastguard Worker #include "fxjs/xfa/cfxjse_context.h"
10*3ac0a46fSAndroid Build Coastguard Worker #include "fxjs/xfa/cfxjse_runtimedata.h"
11*3ac0a46fSAndroid Build Coastguard Worker 
CFXJSE_ScopeUtil_IsolateHandle(v8::Isolate * pIsolate)12*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_IsolateHandle::CFXJSE_ScopeUtil_IsolateHandle(
13*3ac0a46fSAndroid Build Coastguard Worker     v8::Isolate* pIsolate)
14*3ac0a46fSAndroid Build Coastguard Worker     : isolate_scope_(pIsolate), handle_scope_(pIsolate) {}
15*3ac0a46fSAndroid Build Coastguard Worker 
16*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_IsolateHandle::~CFXJSE_ScopeUtil_IsolateHandle() = default;
17*3ac0a46fSAndroid Build Coastguard Worker 
CFXJSE_ScopeUtil_Context(CFXJSE_Context * pContext)18*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_Context::CFXJSE_ScopeUtil_Context(CFXJSE_Context* pContext)
19*3ac0a46fSAndroid Build Coastguard Worker     : context_scope_(pContext->GetContext()) {}
20*3ac0a46fSAndroid Build Coastguard Worker 
21*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_Context::~CFXJSE_ScopeUtil_Context() = default;
22*3ac0a46fSAndroid Build Coastguard Worker 
CFXJSE_ScopeUtil_IsolateHandleContext(CFXJSE_Context * pContext)23*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_IsolateHandleContext::CFXJSE_ScopeUtil_IsolateHandleContext(
24*3ac0a46fSAndroid Build Coastguard Worker     CFXJSE_Context* pContext)
25*3ac0a46fSAndroid Build Coastguard Worker     : isolate_handle_(pContext->GetIsolate()), context_(pContext) {}
26*3ac0a46fSAndroid Build Coastguard Worker 
27*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_IsolateHandleContext::
28*3ac0a46fSAndroid Build Coastguard Worker     ~CFXJSE_ScopeUtil_IsolateHandleContext() = default;
29*3ac0a46fSAndroid Build Coastguard Worker 
CFXJSE_ScopeUtil_RootContext(v8::Isolate * pIsolate)30*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_RootContext::CFXJSE_ScopeUtil_RootContext(
31*3ac0a46fSAndroid Build Coastguard Worker     v8::Isolate* pIsolate)
32*3ac0a46fSAndroid Build Coastguard Worker     : context_scope_(v8::Local<v8::Context>::New(
33*3ac0a46fSAndroid Build Coastguard Worker           pIsolate,
34*3ac0a46fSAndroid Build Coastguard Worker           CFXJSE_RuntimeData::Get(pIsolate)->GetRootContext())) {}
35*3ac0a46fSAndroid Build Coastguard Worker 
36*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_RootContext::~CFXJSE_ScopeUtil_RootContext() = default;
37*3ac0a46fSAndroid Build Coastguard Worker 
38*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_IsolateHandleRootContext::
CFXJSE_ScopeUtil_IsolateHandleRootContext(v8::Isolate * pIsolate)39*3ac0a46fSAndroid Build Coastguard Worker     CFXJSE_ScopeUtil_IsolateHandleRootContext(v8::Isolate* pIsolate)
40*3ac0a46fSAndroid Build Coastguard Worker     : isolate_handle_(pIsolate), root_context_(pIsolate) {}
41*3ac0a46fSAndroid Build Coastguard Worker 
42*3ac0a46fSAndroid Build Coastguard Worker CFXJSE_ScopeUtil_IsolateHandleRootContext::
43*3ac0a46fSAndroid Build Coastguard Worker     ~CFXJSE_ScopeUtil_IsolateHandleRootContext() = default;
44