Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGauthamBanasandra <gautham.bangalore@gmail.com>2019-07-06 16:54:26 +0300
committerRich Trott <rtrott@gmail.com>2019-07-13 07:59:36 +0300
commitcf929c04b082f0d1d980772d343f056ea4fd7359 (patch)
tree974445741cfeb0fec793bf4694841f5428985914 /src/node_main_instance.h
parent9c4bdfe9b27aae59ca5a9c9e9e9bf0460d284571 (diff)
src, tools: replace raw ptr with smart ptr
NodeMainInstance::Create will now returrn an instance of NodeMainInstance in a unique_ptr. PR-URL: https://github.com/nodejs/node/pull/28577 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'src/node_main_instance.h')
-rw-r--r--src/node_main_instance.h16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/node_main_instance.h b/src/node_main_instance.h
index a971c899b81..5bc18cb3de6 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