Equal Types

Assert that two Node-API data types are equal.

Usage

var headerDir = require( '@stdlib/assert/napi/equal-types' );

headerDir

Absolute file path for the directory containing header files for C APIs.

var dir = headerDir;
// returns <string>

Examples

var headerDir = require( '@stdlib/assert/napi/equal-types' );

console.log( headerDir );
// => <string>

C APIs

Usage

#include "stdlib/assert/napi/equal_types.h"

stdlib_assert_napi_equal_types( env, type1, type2, *message, *err )

Asserts that two Node-API data types are equal.

#include <node_api.h>

static napi_value addon( napi_env env, napi_callback_info info ) {
    napi_valuetype vtype1;
    napi_valuetype vtype2;

    // ...

    napi_value err;
    napi_status status = stdlib_assert_napi_equal_types( env, vtype1, vtype2, "Must have equal types.", &err );
    assert( status == napi_ok );
    if ( err != NULL ) {
        assert( napi_throw( env, err ) == napi_ok );
        return NULL;
    }

    // ...
}

The function accepts the following arguments:

  • env: [in] napi_env environment under which the function is invoked.
  • type1: [in] napi_valuetype first data type.
  • type2: [in] napi_valuetype second data type.
  • message: [in] char* error message.
  • err: [out] napi_value* pointer for storing a JavaScript error.
napi_status stdlib_assert_napi_equal_types( const napi_env env, const napi_valuetype type1, const napi_valuetype type2, const char *message, napi_value *err );

The function returns a napi_status status code indicating success or failure (returns napi_ok if success).

Notes

  • If provided unequal data types, the function sets err with a JavaScript error; otherwise, err is set to NULL.
Did you find this page helpful?