/********************************************************************* * NAN - Native Abstractions for Node.js * * Copyright (c) 2017 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 { typedef v8::Local Sig; 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_