@@ -87,7 +87,11 @@ v8::Local<v8::Value> getValueFromObject(v8::Local<v8::Object> options, std::stri
87
87
}
88
88
89
89
int getIntFromObject (v8::Local<v8::Object> options, std::string key) {
90
- return getValueFromObject (options, key)->ToInt32 ()->Int32Value ();
90
+ #if NODE_MAJOR_VERSION >= 10
91
+ return getValueFromObject (options, key)->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
92
+ #else
93
+ return getValueFromObject (options, key)->ToInt32 ()->Int32Value ();
94
+ #endif
91
95
}
92
96
93
97
bool getBoolFromObject (v8::Local<v8::Object> options, std::string key) {
@@ -99,7 +103,11 @@ v8::Local<v8::String> getStringFromObj(v8::Local<v8::Object> options, std::strin
99
103
}
100
104
101
105
double getDoubleFromObject (v8::Local<v8::Object> options, std::string key) {
102
- return getValueFromObject (options, key)->ToNumber ()->NumberValue ();
106
+ #if NODE_MAJOR_VERSION >= 10
107
+ return getValueFromObject (options, key)->ToNumber (v8::Isolate::GetCurrent ())->NumberValue ();
108
+ #else
109
+ return getValueFromObject (options, key)->ToNumber ()->NumberValue ();
110
+ #endif
103
111
}
104
112
105
113
NAN_METHOD (Open) {
@@ -171,7 +179,12 @@ void EIO_AfterOpen(uv_work_t* req) {
171
179
argv[0 ] = Nan::Null ();
172
180
argv[1 ] = Nan::New<v8::Int32>(data->result );
173
181
174
- int fd = argv[1 ]->ToInt32 ()->Int32Value ();
182
+ int fd;
183
+ #if NODE_MAJOR_VERSION >= 10
184
+ fd = argv[1 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
185
+ #else
186
+ fd = argv[1 ]->ToInt32 ()->Int32Value ();
187
+ #endif
175
188
newQForFD (fd);
176
189
177
190
AfterOpenSuccess (data->result , data->dataCallback , data->disconnectedCallback , data->errorCallback );
@@ -190,7 +203,12 @@ NAN_METHOD(Update) {
190
203
Nan::ThrowTypeError (" First argument must be an int" );
191
204
return ;
192
205
}
193
- int fd = info[0 ]->ToInt32 ()->Int32Value ();
206
+ int fd;
207
+ #if NODE_MAJOR_VERSION >= 10
208
+ fd = info[0 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
209
+ #else
210
+ fd = info[0 ]->ToInt32 ()->Int32Value ();
211
+ #endif
194
212
195
213
// options
196
214
if (!info[1 ]->IsObject ()) {
@@ -214,7 +232,11 @@ NAN_METHOD(Update) {
214
232
memset (baton, 0 , sizeof (ConnectionOptionsBaton));
215
233
216
234
baton->fd = fd;
217
- baton->baudRate = Nan::Get (options, Nan::New<v8::String>(" baudRate" ).ToLocalChecked ()).ToLocalChecked ()->ToInt32 ()->Int32Value ();
235
+ #if NODE_MAJOR_VERSION >= 10
236
+ baton->baudRate = Nan::Get (options, Nan::New<v8::String>(" baudRate" ).ToLocalChecked ()).ToLocalChecked ()->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
237
+ #else
238
+ baton->baudRate = Nan::Get (options, Nan::New<v8::String>(" baudRate" ).ToLocalChecked ()).ToLocalChecked ()->ToInt32 ()->Int32Value ();
239
+ #endif
218
240
baton->callback .Reset (info[2 ].As <v8::Function>());
219
241
220
242
uv_work_t * req = new uv_work_t ();
@@ -249,7 +271,12 @@ NAN_METHOD(Write) {
249
271
Nan::ThrowTypeError (" First argument must be an int" );
250
272
return ;
251
273
}
252
- int fd = info[0 ]->ToInt32 ()->Int32Value ();
274
+ int fd;
275
+ #if NODE_MAJOR_VERSION >= 10
276
+ fd = info[0 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
277
+ #else
278
+ fd = info[0 ]->ToInt32 ()->Int32Value ();
279
+ #endif
253
280
254
281
// buffer
255
282
if (!info[1 ]->IsObject () || !node::Buffer::HasInstance (info[1 ])) {
@@ -366,7 +393,12 @@ NAN_METHOD(Close) {
366
393
367
394
CloseBaton* baton = new CloseBaton ();
368
395
memset (baton, 0 , sizeof (CloseBaton));
369
- baton->fd = info[0 ]->ToInt32 ()->Int32Value ();
396
+ #if NODE_MAJOR_VERSION >= 10
397
+ baton->fd = info[0 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
398
+ #else
399
+ baton->fd = info[0 ]->ToInt32 ()->Int32Value ();
400
+ #endif
401
+
370
402
baton->callback .Reset (info[1 ].As <v8::Function>());
371
403
372
404
uv_work_t * req = new uv_work_t ();
@@ -477,7 +509,12 @@ NAN_METHOD(Flush) {
477
509
Nan::ThrowTypeError (" First argument must be an int" );
478
510
return ;
479
511
}
480
- int fd = info[0 ]->ToInt32 ()->Int32Value ();
512
+ int fd;
513
+ #if NODE_MAJOR_VERSION >= 10
514
+ fd = info[0 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
515
+ #else
516
+ fd = info[0 ]->ToInt32 ()->Int32Value ();
517
+ #endif
481
518
482
519
// callback
483
520
if (!info[1 ]->IsFunction ()) {
@@ -525,7 +562,12 @@ NAN_METHOD(Set) {
525
562
Nan::ThrowTypeError (" First argument must be an int" );
526
563
return ;
527
564
}
528
- int fd = info[0 ]->ToInt32 ()->Int32Value ();
565
+ int fd;
566
+ #if NODE_MAJOR_VERSION >= 10
567
+ fd = info[0 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
568
+ #else
569
+ fd = info[0 ]->ToInt32 ()->Int32Value ();
570
+ #endif
529
571
530
572
// options
531
573
if (!info[1 ]->IsObject ()) {
@@ -582,7 +624,12 @@ NAN_METHOD(Drain) {
582
624
Nan::ThrowTypeError (" First argument must be an int" );
583
625
return ;
584
626
}
585
- int fd = info[0 ]->ToInt32 ()->Int32Value ();
627
+ int fd;
628
+ #if NODE_MAJOR_VERSION >= 10
629
+ fd = info[0 ]->ToInt32 (v8::Isolate::GetCurrent ())->Int32Value ();
630
+ #else
631
+ fd = info[0 ]->ToInt32 ()->Int32Value ();
632
+ #endif
586
633
587
634
// callback
588
635
if (!info[1 ]->IsFunction ()) {
0 commit comments