Skip to content

Commit baf6ab8

Browse files
committed
fixup! remove unnecessary MaybeUnwrapOr
1 parent 6012787 commit baf6ab8

20 files changed

+99
-115
lines changed

test/README.md

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,6 @@ To properly test these build flavors, all values returned by a function defined
1818
with `Napi::MaybeOrValue<>` return types in node-addon-api test suite, should
1919
use one of the following test helpers to handle possible JavaScript exceptions.
2020

21-
```cpp
22-
#include "napi.h"
23-
#include "test_helper.h"
24-
25-
using namespace Napi;
26-
27-
void fn(const CallbackInfo& info) {
28-
Object obj = info[0].As<Object>();
29-
Value value = MaybeUnwrap(obj->Get("foobar")); // <- `obj->Get` is calling
30-
// into JavaScript and may throw JavaScript Exceptions. Here we just assert
31-
// getting the parameter must not fail for convenience.
32-
33-
// ... do works with the value.
34-
}
35-
```
36-
3721
There are three test helper functions to conveniently convert `Napi::MaybeOrValue<>`
3822
type to raw types.
3923

test/basic_types/value.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,19 +76,19 @@ static Value IsExternal(const CallbackInfo& info) {
7676
}
7777

7878
static Value ToBoolean(const CallbackInfo& info) {
79-
return MaybeUnwrapOr(info[0].ToBoolean());
79+
return MaybeUnwrap(info[0].ToBoolean());
8080
}
8181

8282
static Value ToNumber(const CallbackInfo& info) {
83-
return MaybeUnwrapOr(info[0].ToNumber());
83+
return MaybeUnwrap(info[0].ToNumber());
8484
}
8585

8686
static Value ToString(const CallbackInfo& info) {
87-
return MaybeUnwrapOr(info[0].ToString());
87+
return MaybeUnwrap(info[0].ToString());
8888
}
8989

9090
static Value ToObject(const CallbackInfo& info) {
91-
return MaybeUnwrapOr(info[0].ToObject());
91+
return MaybeUnwrap(info[0].ToObject());
9292
}
9393

9494
Object InitBasicTypesValue(Env env) {

test/common/test_helper.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ inline T MaybeUnwrap(MaybeOrValue<T> maybe) {
3232
* Do nothing when NODE_ADDON_API_ENABLE_MAYBE is not defined.
3333
*/
3434
template <typename T>
35-
inline T MaybeUnwrapOr(MaybeOrValue<T> maybe, const T& default_value = T()) {
35+
inline T MaybeUnwrapOr(MaybeOrValue<T> maybe, const T& default_value) {
3636
#if defined(NODE_ADDON_API_ENABLE_MAYBE)
3737
return maybe.UnwrapOr(default_value);
3838
#else

test/function.cc

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ Value ValueCallbackWithData(const CallbackInfo& info) {
5454

5555
Value CallWithArgs(const CallbackInfo& info) {
5656
Function func = info[0].As<Function>();
57-
return MaybeUnwrapOr(
57+
return MaybeUnwrap(
5858
func.Call(std::initializer_list<napi_value>{info[1], info[2], info[3]}));
5959
}
6060

@@ -65,7 +65,7 @@ Value CallWithVector(const CallbackInfo& info) {
6565
args.push_back(info[1]);
6666
args.push_back(info[2]);
6767
args.push_back(info[3]);
68-
return MaybeUnwrapOr(func.Call(args));
68+
return MaybeUnwrap(func.Call(args));
6969
}
7070

7171
Value CallWithCStyleArray(const CallbackInfo& info) {
@@ -75,7 +75,7 @@ Value CallWithCStyleArray(const CallbackInfo& info) {
7575
args.push_back(info[1]);
7676
args.push_back(info[2]);
7777
args.push_back(info[3]);
78-
return MaybeUnwrapOr(func.Call(args.size(), args.data()));
78+
return MaybeUnwrap(func.Call(args.size(), args.data()));
7979
}
8080

8181
Value CallWithReceiverAndCStyleArray(const CallbackInfo& info) {
@@ -86,13 +86,13 @@ Value CallWithReceiverAndCStyleArray(const CallbackInfo& info) {
8686
args.push_back(info[2]);
8787
args.push_back(info[3]);
8888
args.push_back(info[4]);
89-
return MaybeUnwrapOr(func.Call(receiver, args.size(), args.data()));
89+
return MaybeUnwrap(func.Call(receiver, args.size(), args.data()));
9090
}
9191

9292
Value CallWithReceiverAndArgs(const CallbackInfo& info) {
9393
Function func = info[0].As<Function>();
9494
Value receiver = info[1];
95-
return MaybeUnwrapOr(func.Call(
95+
return MaybeUnwrap(func.Call(
9696
receiver, std::initializer_list<napi_value>{info[2], info[3], info[4]}));
9797
}
9898

@@ -104,18 +104,18 @@ Value CallWithReceiverAndVector(const CallbackInfo& info) {
104104
args.push_back(info[2]);
105105
args.push_back(info[3]);
106106
args.push_back(info[4]);
107-
return MaybeUnwrapOr(func.Call(receiver, args));
107+
return MaybeUnwrap(func.Call(receiver, args));
108108
}
109109

110110
Value CallWithInvalidReceiver(const CallbackInfo& info) {
111111
Function func = info[0].As<Function>();
112-
return MaybeUnwrapOr(
113-
func.Call(Value(), std::initializer_list<napi_value>{}));
112+
return MaybeUnwrapOr(func.Call(Value(), std::initializer_list<napi_value>{}),
113+
Value());
114114
}
115115

116116
Value CallConstructorWithArgs(const CallbackInfo& info) {
117117
Function func = info[0].As<Function>();
118-
return MaybeUnwrapOr(
118+
return MaybeUnwrap(
119119
func.New(std::initializer_list<napi_value>{info[1], info[2], info[3]}));
120120
}
121121

@@ -126,7 +126,7 @@ Value CallConstructorWithVector(const CallbackInfo& info) {
126126
args.push_back(info[1]);
127127
args.push_back(info[2]);
128128
args.push_back(info[3]);
129-
return MaybeUnwrapOr(func.New(args));
129+
return MaybeUnwrap(func.New(args));
130130
}
131131

132132
Value CallConstructorWithCStyleArray(const CallbackInfo& info) {
@@ -136,7 +136,7 @@ Value CallConstructorWithCStyleArray(const CallbackInfo& info) {
136136
args.push_back(info[1]);
137137
args.push_back(info[2]);
138138
args.push_back(info[3]);
139-
return MaybeUnwrapOr(func.New(args.size(), args.data()));
139+
return MaybeUnwrap(func.New(args.size(), args.data()));
140140
}
141141

142142
void IsConstructCall(const CallbackInfo& info) {
@@ -195,7 +195,7 @@ void MakeCallbackWithInvalidReceiver(const CallbackInfo& info) {
195195

196196
Value CallWithFunctionOperator(const CallbackInfo& info) {
197197
Function func = info[0].As<Function>();
198-
return MaybeUnwrapOr(func({info[1], info[2], info[3]}));
198+
return MaybeUnwrap(func({info[1], info[2], info[3]}));
199199
}
200200

201201
} // end anonymous namespace

test/functionreference.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@ Value Call(const CallbackInfo& info) {
99
FunctionReference ref;
1010
ref.Reset(info[0].As<Function>());
1111

12-
return MaybeUnwrapOr(ref.Call({}));
12+
return MaybeUnwrapOr(ref.Call({}), Value());
1313
}
1414

1515
Value Construct(const CallbackInfo& info) {
1616
HandleScope scope(info.Env());
1717
FunctionReference ref;
1818
ref.Reset(info[0].As<Function>());
1919

20-
return MaybeUnwrapOr(ref.New({}));
20+
return MaybeUnwrapOr(ref.New({}), Object());
2121
}
2222
} // namespace
2323

test/globalObject/global_object_delete_property.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,25 @@ Value DeletePropertyWithCStyleStringAsKey(const CallbackInfo& info) {
77
Object globalObject = info.Env().Global();
88
String key = info[0].As<String>();
99
return Boolean::New(
10-
info.Env(), MaybeUnwrapOr(globalObject.Delete(key.Utf8Value().c_str())));
10+
info.Env(), MaybeUnwrap(globalObject.Delete(key.Utf8Value().c_str())));
1111
}
1212

1313
Value DeletePropertyWithCppStyleStringAsKey(const CallbackInfo& info) {
1414
Object globalObject = info.Env().Global();
1515
String key = info[0].As<String>();
1616
return Boolean::New(info.Env(),
17-
MaybeUnwrapOr(globalObject.Delete(key.Utf8Value())));
17+
MaybeUnwrap(globalObject.Delete(key.Utf8Value())));
1818
}
1919

2020
Value DeletePropertyWithInt32AsKey(const CallbackInfo& info) {
2121
Object globalObject = info.Env().Global();
2222
Number key = info[0].As<Number>();
2323
return Boolean::New(info.Env(),
24-
MaybeUnwrapOr(globalObject.Delete(key.Uint32Value())));
24+
MaybeUnwrap(globalObject.Delete(key.Uint32Value())));
2525
}
2626

2727
Value DeletePropertyWithNapiValueAsKey(const CallbackInfo& info) {
2828
Object globalObject = info.Env().Global();
2929
Name key = info[0].As<Name>();
30-
return Boolean::New(info.Env(), MaybeUnwrapOr(globalObject.Delete(key)));
30+
return Boolean::New(info.Env(), MaybeUnwrap(globalObject.Delete(key)));
3131
}

test/globalObject/global_object_get_property.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,25 @@ using namespace Napi;
66
Value GetPropertyWithNapiValueAsKey(const CallbackInfo& info) {
77
Object globalObject = info.Env().Global();
88
Name key = info[0].As<Name>();
9-
return MaybeUnwrapOr(globalObject.Get(key));
9+
return MaybeUnwrap(globalObject.Get(key));
1010
}
1111

1212
Value GetPropertyWithInt32AsKey(const CallbackInfo& info) {
1313
Object globalObject = info.Env().Global();
1414
Number key = info[0].As<Napi::Number>();
15-
return MaybeUnwrapOr(globalObject.Get(key.Uint32Value()));
15+
return MaybeUnwrapOr(globalObject.Get(key.Uint32Value()), Value());
1616
}
1717

1818
Value GetPropertyWithCStyleStringAsKey(const CallbackInfo& info) {
1919
Object globalObject = info.Env().Global();
2020
String cStrkey = info[0].As<String>();
21-
return MaybeUnwrapOr(globalObject.Get(cStrkey.Utf8Value().c_str()));
21+
return MaybeUnwrapOr(globalObject.Get(cStrkey.Utf8Value().c_str()), Value());
2222
}
2323

2424
Value GetPropertyWithCppStyleStringAsKey(const CallbackInfo& info) {
2525
Object globalObject = info.Env().Global();
2626
String cppStrKey = info[0].As<String>();
27-
return MaybeUnwrapOr(globalObject.Get(cppStrKey.Utf8Value()));
27+
return MaybeUnwrapOr(globalObject.Get(cppStrKey.Utf8Value()), Value());
2828
}
2929

3030
void CreateMockTestObject(const CallbackInfo& info) {

test/globalObject/global_object_has_own_property.cc

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,21 @@ Value HasPropertyWithCStyleStringAsKey(const CallbackInfo& info) {
88
String key = info[0].As<String>();
99
return Boolean::New(
1010
info.Env(),
11-
MaybeUnwrapOr(globalObject.HasOwnProperty(key.Utf8Value().c_str())));
11+
MaybeUnwrapOr(globalObject.HasOwnProperty(key.Utf8Value().c_str()),
12+
false));
1213
}
1314

1415
Value HasPropertyWithCppStyleStringAsKey(const CallbackInfo& info) {
1516
Object globalObject = info.Env().Global();
1617
String key = info[0].As<String>();
1718
return Boolean::New(
18-
info.Env(), MaybeUnwrapOr(globalObject.HasOwnProperty(key.Utf8Value())));
19+
info.Env(),
20+
MaybeUnwrapOr(globalObject.HasOwnProperty(key.Utf8Value()), false));
1921
}
2022

2123
Value HasPropertyWithNapiValueAsKey(const CallbackInfo& info) {
2224
Object globalObject = info.Env().Global();
2325
Name key = info[0].As<Name>();
2426
return Boolean::New(info.Env(),
25-
MaybeUnwrapOr(globalObject.HasOwnProperty(key)));
27+
MaybeUnwrap(globalObject.HasOwnProperty(key)));
2628
}

test/object/delete_property.cc

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,31 +6,33 @@ using namespace Napi;
66
Value DeletePropertyWithUint32(const CallbackInfo& info) {
77
Object obj = info[0].As<Object>();
88
Number key = info[1].As<Number>();
9-
return Boolean::New(info.Env(), MaybeUnwrapOr(obj.Delete(key.Uint32Value())));
9+
return Boolean::New(info.Env(), MaybeUnwrap(obj.Delete(key.Uint32Value())));
1010
}
1111

1212
Value DeletePropertyWithNapiValue(const CallbackInfo& info) {
1313
Object obj = info[0].As<Object>();
1414
Name key = info[1].As<Name>();
15-
return Boolean::New(info.Env(),
16-
MaybeUnwrapOr(obj.Delete(static_cast<napi_value>(key))));
15+
return Boolean::New(
16+
info.Env(),
17+
MaybeUnwrapOr(obj.Delete(static_cast<napi_value>(key)), false));
1718
}
1819

1920
Value DeletePropertyWithNapiWrapperValue(const CallbackInfo& info) {
2021
Object obj = info[0].As<Object>();
2122
Name key = info[1].As<Name>();
22-
return Boolean::New(info.Env(), MaybeUnwrapOr(obj.Delete(key)));
23+
return Boolean::New(info.Env(), MaybeUnwrapOr(obj.Delete(key), false));
2324
}
2425

2526
Value DeletePropertyWithCStyleString(const CallbackInfo& info) {
2627
Object obj = info[0].As<Object>();
2728
String jsKey = info[1].As<String>();
28-
return Boolean::New(info.Env(),
29-
MaybeUnwrapOr(obj.Delete(jsKey.Utf8Value().c_str())));
29+
return Boolean::New(
30+
info.Env(), MaybeUnwrapOr(obj.Delete(jsKey.Utf8Value().c_str()), false));
3031
}
3132

3233
Value DeletePropertyWithCppStyleString(const CallbackInfo& info) {
3334
Object obj = info[0].As<Object>();
3435
String jsKey = info[1].As<String>();
35-
return Boolean::New(info.Env(), MaybeUnwrapOr(obj.Delete(jsKey.Utf8Value())));
36+
return Boolean::New(info.Env(),
37+
MaybeUnwrapOr(obj.Delete(jsKey.Utf8Value()), false));
3638
}

test/object/get_property.cc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,29 +6,29 @@ using namespace Napi;
66
Value GetPropertyWithNapiValue(const CallbackInfo& info) {
77
Object obj = info[0].As<Object>();
88
Name key = info[1].As<Name>();
9-
return MaybeUnwrapOr(obj.Get(static_cast<napi_value>(key)));
9+
return MaybeUnwrapOr(obj.Get(static_cast<napi_value>(key)), Value());
1010
}
1111

1212
Value GetPropertyWithNapiWrapperValue(const CallbackInfo& info) {
1313
Object obj = info[0].As<Object>();
1414
Name key = info[1].As<Name>();
15-
return MaybeUnwrapOr(obj.Get(key));
15+
return MaybeUnwrapOr(obj.Get(key), Value());
1616
}
1717

1818
Value GetPropertyWithUint32(const CallbackInfo& info) {
1919
Object obj = info[0].As<Object>();
2020
Number key = info[1].As<Number>();
21-
return MaybeUnwrapOr(obj.Get(key.Uint32Value()));
21+
return MaybeUnwrap(obj.Get(key.Uint32Value()));
2222
}
2323

2424
Value GetPropertyWithCStyleString(const CallbackInfo& info) {
2525
Object obj = info[0].As<Object>();
2626
String jsKey = info[1].As<String>();
27-
return MaybeUnwrapOr(obj.Get(jsKey.Utf8Value().c_str()));
27+
return MaybeUnwrapOr(obj.Get(jsKey.Utf8Value().c_str()), Value());
2828
}
2929

3030
Value GetPropertyWithCppStyleString(const CallbackInfo& info) {
3131
Object obj = info[0].As<Object>();
3232
String jsKey = info[1].As<String>();
33-
return MaybeUnwrapOr(obj.Get(jsKey.Utf8Value()));
33+
return MaybeUnwrapOr(obj.Get(jsKey.Utf8Value()), Value());
3434
}

0 commit comments

Comments
 (0)