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.
		
		
		
		
			
				
					89 lines
				
				3.0 KiB
			
		
		
			
		
	
	
					89 lines
				
				3.0 KiB
			| 
								 
											4 years ago
										 
									 | 
							
								/*********************************************************************
							 | 
						||
| 
								 | 
							
								 * NAN - Native Abstractions for Node.js
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * Copyright (c) 2018 NAN contributors
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
							 | 
						||
| 
								 | 
							
								 ********************************************************************/
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef NAN_CALLBACKS_H_
							 | 
						||
| 
								 | 
							
								#define NAN_CALLBACKS_H_
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								template<typename T> class FunctionCallbackInfo;
							 | 
						||
| 
								 | 
							
								template<typename T> class PropertyCallbackInfo;
							 | 
						||
| 
								 | 
							
								template<typename T> class Global;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								typedef void(*FunctionCallback)(const FunctionCallbackInfo<v8::Value>&);
							 | 
						||
| 
								 | 
							
								typedef void(*GetterCallback)
							 | 
						||
| 
								 | 
							
								    (v8::Local<v8::String>, const PropertyCallbackInfo<v8::Value>&);
							 | 
						||
| 
								 | 
							
								typedef void(*SetterCallback)(
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::String>,
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::Value>,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<void>&);
							 | 
						||
| 
								 | 
							
								typedef void(*PropertyGetterCallback)(
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::String>,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Value>&);
							 | 
						||
| 
								 | 
							
								typedef void(*PropertySetterCallback)(
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::String>,
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::Value>,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Value>&);
							 | 
						||
| 
								 | 
							
								typedef void(*PropertyEnumeratorCallback)
							 | 
						||
| 
								 | 
							
								    (const PropertyCallbackInfo<v8::Array>&);
							 | 
						||
| 
								 | 
							
								typedef void(*PropertyDeleterCallback)(
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::String>,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Boolean>&);
							 | 
						||
| 
								 | 
							
								typedef void(*PropertyQueryCallback)(
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::String>,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Integer>&);
							 | 
						||
| 
								 | 
							
								typedef void(*IndexGetterCallback)(
							 | 
						||
| 
								 | 
							
								    uint32_t,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Value>&);
							 | 
						||
| 
								 | 
							
								typedef void(*IndexSetterCallback)(
							 | 
						||
| 
								 | 
							
								    uint32_t,
							 | 
						||
| 
								 | 
							
								    v8::Local<v8::Value>,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Value>&);
							 | 
						||
| 
								 | 
							
								typedef void(*IndexEnumeratorCallback)
							 | 
						||
| 
								 | 
							
								    (const PropertyCallbackInfo<v8::Array>&);
							 | 
						||
| 
								 | 
							
								typedef void(*IndexDeleterCallback)(
							 | 
						||
| 
								 | 
							
								    uint32_t,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Boolean>&);
							 | 
						||
| 
								 | 
							
								typedef void(*IndexQueryCallback)(
							 | 
						||
| 
								 | 
							
								    uint32_t,
							 | 
						||
| 
								 | 
							
								    const PropertyCallbackInfo<v8::Integer>&);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace imp {
							 | 
						||
| 
								 | 
							
								typedef v8::Local<v8::AccessorSignature> 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_
							 |