@@ -319,6 +319,7 @@ napi_value metacall_node(napi_env env, napi_callback_info info)
319319 metacall_node_value_to_napi (env, ptr, &js_object);
320320 return js_object;
321321}
322+
322323// this function is the handler of the "metacall_load_from_file"
323324napi_value metacall_node_load_from_file (napi_env env, napi_callback_info info)
324325{
@@ -384,21 +385,39 @@ napi_value metacall_node_inspect(napi_env env, napi_callback_info)
384385 return result;
385386}
386387
388+ /* TODO: Add documentation */
389+ napi_value metacall_node_logs (napi_env env, napi_callback_info)
390+ {
391+ struct metacall_log_stdio_type log_stdio = { stdout };
392+
393+ if (metacall_log (METACALL_LOG_STDIO, (void *)&log_stdio) != 0 )
394+ {
395+ napi_throw_error (env, NULL , " MetaCall failed to initialize debug logs" );
396+ }
397+
398+ return NULL ;
399+ }
400+
387401/* TODO: Review documentation */
388402// This functions sets the necessary js functions that could be called in NodeJs
389403void metacall_node_exports (napi_env env, napi_value exports)
390404{
391405 const char function_metacall_str[] = " metacall" ;
392406 const char function_load_from_file_str[] = " metacall_load_from_file" ;
393407 const char function_inspect_str[] = " metacall_inspect" ;
394- napi_value function_metacall, function_load_from_file, function_inspect;
408+ const char function_logs_str[] = " metacall_logs" ;
409+
410+ napi_value function_metacall, function_load_from_file, function_inspect, function_logs;
395411
396412 napi_create_function (env, function_metacall_str, sizeof (function_metacall_str) - 1 , metacall_node, NULL , &function_metacall);
397413 napi_create_function (env, function_load_from_file_str, sizeof (function_load_from_file_str) - 1 , metacall_node_load_from_file, NULL , &function_load_from_file);
398414 napi_create_function (env, function_inspect_str, sizeof (function_inspect_str) - 1 , metacall_node_inspect, NULL , &function_inspect);
415+ napi_create_function (env, function_logs_str, sizeof (function_logs_str) - 1 , metacall_node_logs, NULL , &function_logs);
416+
399417 napi_set_named_property (env, exports, function_metacall_str, function_metacall);
400418 napi_set_named_property (env, exports, function_load_from_file_str, function_load_from_file);
401419 napi_set_named_property (env, exports, function_inspect_str, function_inspect);
420+ napi_set_named_property (env, exports, function_logs_str, function_logs);
402421}
403422
404423/* TODO: Review documentation */
0 commit comments