Skip to content

Commit 6fc5bb7

Browse files
committed
Move #if to separate function
1 parent 2f6a66b commit 6fc5bb7

File tree

4 files changed

+15
-22
lines changed

4 files changed

+15
-22
lines changed

src/logger.cc

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include <v8.h>
44
#include <nan.h>
55
#include <tree_sitter/api.h>
6+
#include "./util.h"
67

78
namespace node_tree_sitter {
89

@@ -41,24 +42,14 @@ void Logger::Log(void *payload, TSLogType type, const char *message_str) {
4142

4243
Local<Value> argv[3] = { name, params, type_name };
4344
TryCatch try_catch(Isolate::GetCurrent());
44-
45-
#if (V8_MAJOR_VERSION > 9 || (V8_MAJOR_VERSION == 9 && V8_MINOR_VERION > 4))
46-
Nan::Call(fn, fn->GetCreationContext().ToLocalChecked()->Global(), 3, argv);
47-
#else
48-
Nan::Call(fn, fn->CreationContext()->Global(), 3, argv);
49-
#endif
45+
Nan::Call(fn, GetGlobal(fn), 3, argv);
5046
if (try_catch.HasCaught()) {
5147
Local<Value> log_argv[2] = {
5248
Nan::New("Error in debug callback:").ToLocalChecked(),
5349
try_catch.Exception()
5450
};
5551

56-
57-
#if (V8_MAJOR_VERSION > 9 || (V8_MAJOR_VERSION == 9 && V8_MINOR_VERION > 4))
58-
Local<Object> console = Local<Object>::Cast(Nan::Get(fn->GetCreationContext().ToLocalChecked()->Global(), Nan::New("console").ToLocalChecked()).ToLocalChecked());
59-
#else
60-
Local<Object> console = Local<Object>::Cast(Nan::Get(fn->CreationContext()->Global(), Nan::New("console").ToLocalChecked()).ToLocalChecked());
61-
#endif
52+
Local<Object> console = Local<Object>::Cast(Nan::Get(GetGlobal(fn), Nan::New("console").ToLocalChecked()).ToLocalChecked());
6253
Local<Function> error_fn = Local<Function>::Cast(Nan::Get(console, Nan::New("error").ToLocalChecked()).ToLocalChecked());
6354
Nan::Call(error_fn, console, 2, log_argv);
6455
}

src/parser.cc

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,7 @@ class CallbackInput {
6060
uint32_t utf16_unit = byte / 2;
6161
Local<Value> argv[2] = { Nan::New<Number>(utf16_unit), PointToJS(position) };
6262
TryCatch try_catch(Isolate::GetCurrent());
63-
#if (V8_MAJOR_VERSION > 9 || (V8_MAJOR_VERSION == 9 && V8_MINOR_VERION > 4))
64-
auto maybe_result_value = Nan::Call(callback, callback->GetCreationContext().ToLocalChecked()->Global(), 2, argv);
65-
#else
66-
auto maybe_result_value = Nan::Call(callback, callback->CreationContext()->Global(), 2, argv);
67-
#endif
63+
auto maybe_result_value = Nan::Call(callback, GetGlobal(callback), 2, argv);
6864
if (try_catch.HasCaught()) return nullptr;
6965

7066
Local<Value> result_value;
@@ -368,11 +364,7 @@ void Parser::ParseTextBuffer(const Nan::FunctionCallbackInfo<Value> &info) {
368364
delete input;
369365
Local<Value> argv[] = {Tree::NewInstance(result)};
370366
auto callback = info[0].As<Function>();
371-
#if (V8_MAJOR_VERSION > 9 || (V8_MAJOR_VERSION == 9 && V8_MINOR_VERION > 4))
372-
Nan::Call(callback, callback->GetCreationContext().ToLocalChecked()->Global(), 1, argv);
373-
#else
374-
Nan::Call(callback, callback->CreationContext()->Global(), 1, argv);
375-
#endif
367+
Nan::Call(callback, GetGlobal(callback), 1, argv);
376368
return;
377369
}
378370
}

src/util.cc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,12 @@ bool instance_of(v8::Local<v8::Value> value, v8::Local<v8::Object> object) {
1111
return maybe_bool.FromJust();
1212
}
1313

14+
v8::Local<v8::Object> GetGlobal(v8::Local<v8::Function>& callback) {
15+
#if (V8_MAJOR_VERSION > 9 || (V8_MAJOR_VERSION == 9 && V8_MINOR_VERION > 4))
16+
return callback->GetCreationContext().ToLocalChecked()->Global();
17+
#else
18+
return callback->CreationContext()->Global();
19+
#endif
20+
}
21+
1422
} // namespace node_tree_sitter

src/util.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ struct FunctionPair {
2020

2121
bool instance_of(v8::Local<v8::Value> value, v8::Local<v8::Object> object);
2222

23+
v8::Local<v8::Object> GetGlobal(v8::Local<v8::Function>& callback);
24+
2325
} // namespace node_tree_sitter
2426

2527
#endif // NODE_TREE_SITTER_UTIL_H_

0 commit comments

Comments
 (0)