You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.4 KiB
45 lines
1.4 KiB
5 years ago
|
#ifndef SRC_NODE_API_TYPES_H_
|
||
|
#define SRC_NODE_API_TYPES_H_
|
||
|
|
||
|
#include "js_native_api_types.h"
|
||
|
|
||
|
typedef struct napi_callback_scope__* napi_callback_scope;
|
||
|
typedef struct napi_async_context__* napi_async_context;
|
||
|
typedef struct napi_async_work__* napi_async_work;
|
||
|
#if NAPI_VERSION >= 4
|
||
|
typedef struct napi_threadsafe_function__* napi_threadsafe_function;
|
||
|
#endif // NAPI_VERSION >= 4
|
||
|
|
||
|
#if NAPI_VERSION >= 4
|
||
|
typedef enum {
|
||
|
napi_tsfn_release,
|
||
|
napi_tsfn_abort
|
||
|
} napi_threadsafe_function_release_mode;
|
||
|
|
||
|
typedef enum {
|
||
|
napi_tsfn_nonblocking,
|
||
|
napi_tsfn_blocking
|
||
|
} napi_threadsafe_function_call_mode;
|
||
|
#endif // NAPI_VERSION >= 4
|
||
|
|
||
|
typedef void (*napi_async_execute_callback)(napi_env env,
|
||
|
void* data);
|
||
|
typedef void (*napi_async_complete_callback)(napi_env env,
|
||
|
napi_status status,
|
||
|
void* data);
|
||
|
#if NAPI_VERSION >= 4
|
||
|
typedef void (*napi_threadsafe_function_call_js)(napi_env env,
|
||
|
napi_value js_callback,
|
||
|
void* context,
|
||
|
void* data);
|
||
|
#endif // NAPI_VERSION >= 4
|
||
|
|
||
|
typedef struct {
|
||
|
uint32_t major;
|
||
|
uint32_t minor;
|
||
|
uint32_t patch;
|
||
|
const char* release;
|
||
|
} napi_node_version;
|
||
|
|
||
|
#endif // SRC_NODE_API_TYPES_H_
|