Convert a signed 64-bit integer to a Node-API value.
var headerDir = require( '@stdlib/napi/create-int64' );Absolute file path for the directory containing header files for C APIs.
var dir = headerDir;
// returns <string>var headerDir = require( '@stdlib/napi/create-int64' );
console.log( headerDir );
// => <string>#include "stdlib/napi/create_int64.h"Converts a signed 64-bit integer to a Node-API value.
#include "stdlib/napi/create_int64.h"
#include <node_api.h>
static napi_value addon( napi_env env, napi_callback_info info ) {
// ...
napi_value value;
napi_status status = stdlib_napi_create_int64( env, 1, &value );
assert( status == napi_ok );
// ...
}The function accepts the following arguments:
- env:
[in] napi_envenvironment under which the function is invoked. - value:
[in] int64_tsigned 64-bit integer. - out:
[out] napi_value*destination for storing output value.
napi_status stdlib_napi_create_int64( const napi_env env, const int64_t value, napi_value *out );The function returns a napi_status status code indicating success or failure (returns napi_ok if success).
Macro for converting a signed 64-bit integer to a Node-API value.
#include "stdlib/napi/create_int64.h"
#include "stdlib/napi/argv_int64.h"
#include "stdlib/napi/argv.h"
#include <node_api.h>
#include <stdint.h>
static int64_t fcn( const int64_t v ) {
return v;
}
// ...
static napi_value addon( napi_env env, napi_callback_info info ) {
// Retrieve add-on callback arguments:
STDLIB_NAPI_ARGV( env, info, argv, argc, 1 );
// Convert the first argument to a C type:
STDLIB_NAPI_ARGV_INT64( env, value, argv, 0 );
// ...
// Convert a value having a C type to a Node-API value:
STDLIB_NAPI_CREATE_INT64( env, fcn( value ), out );
return out;
}The macro expects the following arguments:
- env: environment under which the callback is invoked.
- expression: expression returning a signed 64-bit integer.
- name: output variable name.
- The generated JavaScript value is a
BigInt(N-API Version 6+).