diff options
Diffstat (limited to 'src/node_main_instance.h')
-rw-r--r-- | src/node_main_instance.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/node_main_instance.h b/src/node_main_instance.h index a971c899b8..5bc18cb3de 100644 --- a/src/node_main_instance.h +++ b/src/node_main_instance.h @@ -4,6 +4,8 @@ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS #include <cstddef> +#include <memory> + #include "node.h" #include "util.h" #include "uv.h" @@ -22,7 +24,7 @@ class NodeMainInstance { // platform->RegisterIsolate(isolate, loop); // isolate->Initialize(...); // isolate->Enter(); - // NodeMainInstance* main_instance = + // std::unique_ptr<NodeMainInstance> main_instance = // NodeMainInstance::Create(isolate, loop, args, exec_args); // // When tearing it down: @@ -33,11 +35,13 @@ class NodeMainInstance { // platform->UnregisterIsolate(isolate); // // After calling Dispose() the main_instance is no longer accessible. - static NodeMainInstance* Create(v8::Isolate* isolate, - uv_loop_t* event_loop, - MultiIsolatePlatform* platform, - const std::vector<std::string>& args, - const std::vector<std::string>& exec_args); + static std::unique_ptr<NodeMainInstance> Create( + v8::Isolate* isolate, + uv_loop_t* event_loop, + MultiIsolatePlatform* platform, + const std::vector<std::string>& args, + const std::vector<std::string>& exec_args); + void Dispose(); // Create a main instance that owns the isolate |