Node-API Exports
C utilities for registering Node-API modules.
Usage
var headerDir = require( '@stdlib/napi/export' );
headerDir
Absolute file path for the directory containing header files for C APIs.
var dir = headerDir;
// returns <string>
Examples
var headerDir = require( '@stdlib/napi/export' );
console.log( headerDir );
// => <string>
C APIs
Usage
#include "stdlib/napi/export.h"
STDLIB_NAPI_MODULE_EXPORT_FCN( name )
Macro for registering a Node-API module which exports a function.
#include <node_api.h>
// ...
static napi_value addon( napi_env env, napi_callback_info info ) {
// ...
}
// ...
// Register a Node-API module:
STDLIB_NAPI_MODULE_EXPORT_FCN( addon )
The macro expects the following arguments:
- name: name of the C function to export.
When used, this macro should be used instead of NAPI_MODULE
. The macro includes NAPI_MODULE
, thus ensuring Node-API module registration.
STDLIB_NAPI_MODULE_EXPORT_FCN_WITH_METHOD( fcn_name, prop_name, fcn_method_name )
Macro for registering a Node-API module which exports a function having a method.
#include <node_api.h>
// ...
static napi_value addon( napi_env env, napi_callback_info info ) {
// ...
}
static napi_value addon_method( napi_env env, napi_callback_info info ) {
// ...
}
// ...
// Register a Node-API module:
STDLIB_NAPI_MODULE_EXPORT_FCN_WITH_METHOD( addon, "foo", addon_method )
The macro expects the following arguments:
- fcn_name: name of the C function to export.
- prop_name: property name.
- fcn_method_name: name of the C function to export as a method.
When used, this macro should be used instead of NAPI_MODULE
. The macro includes NAPI_MODULE
, thus ensuring Node-API module registration.