| Index: fxjse/runtime.h
|
| diff --git a/fxjse/runtime.h b/fxjse/runtime.h
|
| index e3b4113a50c0bc1ec051d37ae63df3445962c41c..ff3be3a5210945a84a14104d2d3f10c748bd18a5 100644
|
| --- a/fxjse/runtime.h
|
| +++ b/fxjse/runtime.h
|
| @@ -16,6 +16,8 @@ class CFXJSE_RuntimeList;
|
|
|
| class CFXJSE_RuntimeData {
|
| public:
|
| + ~CFXJSE_RuntimeData();
|
| +
|
| static CFXJSE_RuntimeData* Get(v8::Isolate* pIsolate);
|
|
|
| v8::Isolate* m_pIsolate;
|
| @@ -23,22 +25,28 @@ class CFXJSE_RuntimeData {
|
| v8::Global<v8::Context> m_hRootContext;
|
|
|
| protected:
|
| + explicit CFXJSE_RuntimeData(v8::Isolate* pIsolate);
|
| +
|
| static CFXJSE_RuntimeData* Create(v8::Isolate* pIsolate);
|
| - CFXJSE_RuntimeData(v8::Isolate* pIsolate) : m_pIsolate(pIsolate) {}
|
| - CFXJSE_RuntimeData();
|
| - CFXJSE_RuntimeData(const CFXJSE_RuntimeData&);
|
| - CFXJSE_RuntimeData& operator=(const CFXJSE_RuntimeData&);
|
| +
|
| + private:
|
| + CFXJSE_RuntimeData(const CFXJSE_RuntimeData&) = delete;
|
| + CFXJSE_RuntimeData& operator=(const CFXJSE_RuntimeData&) = delete;
|
| };
|
|
|
| class CFXJSE_IsolateTracker {
|
| public:
|
| typedef void (*DisposeCallback)(v8::Isolate*, bool bOwnedIsolate);
|
| - static CFXJSE_IsolateTracker* g_pInstance;
|
| +
|
| + CFXJSE_IsolateTracker();
|
| + ~CFXJSE_IsolateTracker();
|
|
|
| void Append(v8::Isolate* pIsolate);
|
| void Remove(v8::Isolate* pIsolate, DisposeCallback lpfnDisposeCallback);
|
| void RemoveAll(DisposeCallback lpfnDisposeCallback);
|
|
|
| + static CFXJSE_IsolateTracker* g_pInstance;
|
| +
|
| protected:
|
| std::vector<v8::Isolate*> m_OwnedIsolates;
|
| };
|
|
|