package.nan_callbacks.h Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of nan Show documentation
Show all versions of nan Show documentation
Native Abstractions for Node.js: C++ header for Node 0.8 -> 18 compatibility
/*********************************************************************
* NAN - Native Abstractions for Node.js
*
* Copyright (c) 2018 NAN contributors
*
* MIT License
********************************************************************/
#ifndef NAN_CALLBACKS_H_
#define NAN_CALLBACKS_H_
template class FunctionCallbackInfo;
template class PropertyCallbackInfo;
template class Global;
typedef void(*FunctionCallback)(const FunctionCallbackInfo&);
typedef void(*GetterCallback)
(v8::Local, const PropertyCallbackInfo&);
typedef void(*SetterCallback)(
v8::Local,
v8::Local,
const PropertyCallbackInfo&);
typedef void(*PropertyGetterCallback)(
v8::Local,
const PropertyCallbackInfo&);
typedef void(*PropertySetterCallback)(
v8::Local,
v8::Local,
const PropertyCallbackInfo&);
typedef void(*PropertyEnumeratorCallback)
(const PropertyCallbackInfo&);
typedef void(*PropertyDeleterCallback)(
v8::Local,
const PropertyCallbackInfo&);
typedef void(*PropertyQueryCallback)(
v8::Local,
const PropertyCallbackInfo&);
typedef void(*IndexGetterCallback)(
uint32_t,
const PropertyCallbackInfo&);
typedef void(*IndexSetterCallback)(
uint32_t,
v8::Local,
const PropertyCallbackInfo&);
typedef void(*IndexEnumeratorCallback)
(const PropertyCallbackInfo&);
typedef void(*IndexDeleterCallback)(
uint32_t,
const PropertyCallbackInfo&);
typedef void(*IndexQueryCallback)(
uint32_t,
const PropertyCallbackInfo&);
namespace imp {
#if (NODE_MODULE_VERSION < NODE_16_0_MODULE_VERSION)
typedef v8::Local Sig;
#else
typedef v8::Local Sig;
#endif
static const int kDataIndex = 0;
static const int kFunctionIndex = 1;
static const int kFunctionFieldCount = 2;
static const int kGetterIndex = 1;
static const int kSetterIndex = 2;
static const int kAccessorFieldCount = 3;
static const int kPropertyGetterIndex = 1;
static const int kPropertySetterIndex = 2;
static const int kPropertyEnumeratorIndex = 3;
static const int kPropertyDeleterIndex = 4;
static const int kPropertyQueryIndex = 5;
static const int kPropertyFieldCount = 6;
static const int kIndexPropertyGetterIndex = 1;
static const int kIndexPropertySetterIndex = 2;
static const int kIndexPropertyEnumeratorIndex = 3;
static const int kIndexPropertyDeleterIndex = 4;
static const int kIndexPropertyQueryIndex = 5;
static const int kIndexPropertyFieldCount = 6;
} // end of namespace imp
#if NODE_MODULE_VERSION > NODE_0_10_MODULE_VERSION
# include "nan_callbacks_12_inl.h" // NOLINT(build/include)
#else
# include "nan_callbacks_pre_12_inl.h" // NOLINT(build/include)
#endif
#endif // NAN_CALLBACKS_H_
© 2015 - 2024 Weber Informatics LLC | Privacy Policy