Initial commit
[yaffs-website] / node_modules / nan / nan_converters_pre_43_inl.h
1 /*********************************************************************
2  * NAN - Native Abstractions for Node.js
3  *
4  * Copyright (c) 2017 NAN contributors
5  *
6  * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
7  ********************************************************************/
8
9 #ifndef NAN_CONVERTERS_PRE_43_INL_H_
10 #define NAN_CONVERTERS_PRE_43_INL_H_
11
12 #define X(TYPE)                                                                \
13 imp::ToFactory<v8::TYPE>::return_t                                             \
14 imp::ToFactory<v8::TYPE>::convert(v8::Local<v8::Value> val) {                  \
15   return val->To ## TYPE();                                                    \
16 }
17
18 X(Boolean)
19 X(Number)
20 X(String)
21 X(Object)
22 X(Integer)
23 X(Uint32)
24 X(Int32)
25
26 #undef X
27
28 #define X(TYPE, NAME)                                                          \
29 imp::ToFactory<TYPE>::return_t                                                 \
30 imp::ToFactory<TYPE>::convert(v8::Local<v8::Value> val) {                      \
31   return Just(val->NAME ## Value());                                           \
32 }
33
34 X(bool, Boolean)
35 X(double, Number)
36 X(int64_t, Integer)
37 X(uint32_t, Uint32)
38 X(int32_t, Int32)
39
40 #undef X
41
42 #endif  // NAN_CONVERTERS_PRE_43_INL_H_