1
+ #define NAPI_EXPERIMENTAL
1
2
#include <js_native_api.h>
2
3
#include "../common.h"
3
4
@@ -40,6 +41,11 @@ static napi_value throwTypeError(napi_env env, napi_callback_info info) {
40
41
return NULL ;
41
42
}
42
43
44
+ static napi_value throwSyntaxError (napi_env env , napi_callback_info info ) {
45
+ NODE_API_CALL (env , node_api_throw_syntax_error (env , NULL , "syntax error" ));
46
+ return NULL ;
47
+ }
48
+
43
49
static napi_value throwErrorCode (napi_env env , napi_callback_info info ) {
44
50
NODE_API_CALL (env , napi_throw_error (env , "ERR_TEST_CODE" , "Error [error]" ));
45
51
return NULL ;
@@ -57,6 +63,11 @@ static napi_value throwTypeErrorCode(napi_env env, napi_callback_info info) {
57
63
return NULL ;
58
64
}
59
65
66
+ static napi_value throwSyntaxErrorCode (napi_env env , napi_callback_info info ) {
67
+ NODE_API_CALL (env ,
68
+ node_api_throw_syntax_error (env , "ERR_TEST_CODE" , "SyntaxError [syntax error]" ));
69
+ return NULL ;
70
+ }
60
71
61
72
static napi_value createError (napi_env env , napi_callback_info info ) {
62
73
napi_value result ;
@@ -85,6 +96,15 @@ static napi_value createTypeError(napi_env env, napi_callback_info info) {
85
96
return result ;
86
97
}
87
98
99
+ static napi_value createSyntaxError (napi_env env , napi_callback_info info ) {
100
+ napi_value result ;
101
+ napi_value message ;
102
+ NODE_API_CALL (env , napi_create_string_utf8 (
103
+ env , "syntax error" , NAPI_AUTO_LENGTH , & message ));
104
+ NODE_API_CALL (env , node_api_create_syntax_error (env , NULL , message , & result ));
105
+ return result ;
106
+ }
107
+
88
108
static napi_value createErrorCode (napi_env env , napi_callback_info info ) {
89
109
napi_value result ;
90
110
napi_value message ;
@@ -123,6 +143,19 @@ static napi_value createTypeErrorCode(napi_env env, napi_callback_info info) {
123
143
return result ;
124
144
}
125
145
146
+ static napi_value createSyntaxErrorCode (napi_env env , napi_callback_info info ) {
147
+ napi_value result ;
148
+ napi_value message ;
149
+ napi_value code ;
150
+ NODE_API_CALL (env ,
151
+ napi_create_string_utf8 (
152
+ env , "SyntaxError [syntax error]" , NAPI_AUTO_LENGTH , & message ));
153
+ NODE_API_CALL (env , napi_create_string_utf8 (
154
+ env , "ERR_TEST_CODE" , NAPI_AUTO_LENGTH , & code ));
155
+ NODE_API_CALL (env , node_api_create_syntax_error (env , code , message , & result ));
156
+ return result ;
157
+ }
158
+
126
159
static napi_value throwArbitrary (napi_env env , napi_callback_info info ) {
127
160
napi_value arbitrary ;
128
161
size_t argc = 1 ;
@@ -139,16 +172,20 @@ napi_value Init(napi_env env, napi_value exports) {
139
172
DECLARE_NODE_API_PROPERTY ("throwError" , throwError ),
140
173
DECLARE_NODE_API_PROPERTY ("throwRangeError" , throwRangeError ),
141
174
DECLARE_NODE_API_PROPERTY ("throwTypeError" , throwTypeError ),
175
+ DECLARE_NODE_API_PROPERTY ("throwSyntaxError" , throwSyntaxError ),
142
176
DECLARE_NODE_API_PROPERTY ("throwErrorCode" , throwErrorCode ),
143
177
DECLARE_NODE_API_PROPERTY ("throwRangeErrorCode" , throwRangeErrorCode ),
144
178
DECLARE_NODE_API_PROPERTY ("throwTypeErrorCode" , throwTypeErrorCode ),
179
+ DECLARE_NODE_API_PROPERTY ("throwSyntaxErrorCode" , throwSyntaxErrorCode ),
145
180
DECLARE_NODE_API_PROPERTY ("throwArbitrary" , throwArbitrary ),
146
181
DECLARE_NODE_API_PROPERTY ("createError" , createError ),
147
182
DECLARE_NODE_API_PROPERTY ("createRangeError" , createRangeError ),
148
183
DECLARE_NODE_API_PROPERTY ("createTypeError" , createTypeError ),
184
+ DECLARE_NODE_API_PROPERTY ("createSyntaxError" , createSyntaxError ),
149
185
DECLARE_NODE_API_PROPERTY ("createErrorCode" , createErrorCode ),
150
186
DECLARE_NODE_API_PROPERTY ("createRangeErrorCode" , createRangeErrorCode ),
151
187
DECLARE_NODE_API_PROPERTY ("createTypeErrorCode" , createTypeErrorCode ),
188
+ DECLARE_NODE_API_PROPERTY ("createSyntaxErrorCode" , createSyntaxErrorCode ),
152
189
};
153
190
154
191
NODE_API_CALL (env , napi_define_properties (
0 commit comments