about summary refs log tree commit diff stats
path: root/js/blotbotboot/node_modules/nan/nan_weak.h
diff options
context:
space:
mode:
Diffstat (limited to 'js/blotbotboot/node_modules/nan/nan_weak.h')
-rw-r--r--js/blotbotboot/node_modules/nan/nan_weak.h437
1 files changed, 0 insertions, 437 deletions
diff --git a/js/blotbotboot/node_modules/nan/nan_weak.h b/js/blotbotboot/node_modules/nan/nan_weak.h
deleted file mode 100644
index 7e7ab07..0000000
--- a/js/blotbotboot/node_modules/nan/nan_weak.h
+++ /dev/null
@@ -1,437 +0,0 @@
-/*********************************************************************
- * NAN - Native Abstractions for Node.js
- *
- * Copyright (c) 2018 NAN contributors
- *
- * MIT License <https://github.com/nodejs/nan/blob/master/LICENSE.md>
- ********************************************************************/
-
-#ifndef NAN_WEAK_H_
-#define NAN_WEAK_H_
-
-static const int kInternalFieldsInWeakCallback = 2;
-static const int kNoInternalFieldIndex = -1;
-
-#if defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 4 ||                      \
-  (V8_MAJOR_VERSION == 4 && defined(V8_MINOR_VERSION) && V8_MINOR_VERSION >= 3))
-# define NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_ \
-    v8::WeakCallbackInfo<WeakCallbackInfo<T> > const&
-# define NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_ \
-    NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-# define NAN_WEAK_PARAMETER_CALLBACK_SIG_ NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-# define NAN_WEAK_TWOFIELD_CALLBACK_SIG_ NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_
-#elif NODE_MODULE_VERSION > IOJS_1_1_MODULE_VERSION
-# define NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_ \
-    v8::PhantomCallbackData<WeakCallbackInfo<T> > const&
-# define NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_ \
-    NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-# define NAN_WEAK_PARAMETER_CALLBACK_SIG_ NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-# define NAN_WEAK_TWOFIELD_CALLBACK_SIG_ NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_
-#elif NODE_MODULE_VERSION > NODE_0_12_MODULE_VERSION
-# define NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_ \
-    v8::PhantomCallbackData<WeakCallbackInfo<T> > const&
-# define NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_ \
-    v8::InternalFieldsCallbackData<WeakCallbackInfo<T>, void> const&
-# define NAN_WEAK_PARAMETER_CALLBACK_SIG_ NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-# define NAN_WEAK_TWOFIELD_CALLBACK_SIG_ NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_
-#elif NODE_MODULE_VERSION > NODE_0_10_MODULE_VERSION
-# define NAN_WEAK_CALLBACK_DATA_TYPE_ \
-    v8::WeakCallbackData<S, WeakCallbackInfo<T> > const&
-# define NAN_WEAK_CALLBACK_SIG_ NAN_WEAK_CALLBACK_DATA_TYPE_
-#else
-# define NAN_WEAK_CALLBACK_DATA_TYPE_ void *
-# define NAN_WEAK_CALLBACK_SIG_ \
-    v8::Persistent<v8::Value>, NAN_WEAK_CALLBACK_DATA_TYPE_
-#endif
-
-template<typename T>
-class WeakCallbackInfo {
- public:
-  typedef void (*Callback)(const WeakCallbackInfo<T>& data);
-  WeakCallbackInfo(
-      Persistent<v8::Value> *persistent
-    , Callback callback
-    , void *parameter
-    , void *field1 = 0
-    , void *field2 = 0) :
-        callback_(callback), isolate_(0), parameter_(parameter) {
-    std::memcpy(&persistent_, persistent, sizeof (v8::Persistent<v8::Value>));
-    internal_fields_[0] = field1;
-    internal_fields_[1] = field2;
-  }
-  inline v8::Isolate *GetIsolate() const { return isolate_; }
-  inline T *GetParameter() const { return static_cast<T*>(parameter_); }
-  inline void *GetInternalField(int index) const {
-    assert((index == 0 || index == 1) && "internal field index out of bounds");
-    if (index == 0) {
-      return internal_fields_[0];
-    } else {
-      return internal_fields_[1];
-    }
-  }
-
- private:
-  NAN_DISALLOW_ASSIGN_COPY_MOVE(WeakCallbackInfo)
-  Callback callback_;
-  v8::Isolate *isolate_;
-  void *parameter_;
-  void *internal_fields_[kInternalFieldsInWeakCallback];
-  v8::Persistent<v8::Value> persistent_;
-  template<typename S, typename M> friend class Persistent;
-  template<typename S> friend class PersistentBase;
-#if NODE_MODULE_VERSION <= NODE_0_12_MODULE_VERSION
-# if NODE_MODULE_VERSION > NODE_0_10_MODULE_VERSION
-  template<typename S>
-  static void invoke(NAN_WEAK_CALLBACK_SIG_ data);
-  template<typename S>
-  static WeakCallbackInfo *unwrap(NAN_WEAK_CALLBACK_DATA_TYPE_ data);
-# else
-  static void invoke(NAN_WEAK_CALLBACK_SIG_ data);
-  static WeakCallbackInfo *unwrap(NAN_WEAK_CALLBACK_DATA_TYPE_ data);
-# endif
-#else
-# if defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 4 ||                     \
-  (V8_MAJOR_VERSION == 4 && defined(V8_MINOR_VERSION) && V8_MINOR_VERSION >= 3))
-  template<bool isFirstPass>
-  static void invokeparameter(NAN_WEAK_PARAMETER_CALLBACK_SIG_ data);
-  template<bool isFirstPass>
-  static void invoketwofield(NAN_WEAK_TWOFIELD_CALLBACK_SIG_ data);
-# else
-  static void invokeparameter(NAN_WEAK_PARAMETER_CALLBACK_SIG_ data);
-  static void invoketwofield(NAN_WEAK_TWOFIELD_CALLBACK_SIG_ data);
-# endif
-  static WeakCallbackInfo *unwrapparameter(
-      NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_ data);
-  static WeakCallbackInfo *unwraptwofield(
-      NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_ data);
-#endif
-};
-
-
-#if defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 4 ||                      \
-  (V8_MAJOR_VERSION == 4 && defined(V8_MINOR_VERSION) && V8_MINOR_VERSION >= 3))
-
-template<typename T>
-template<bool isFirstPass>
-void
-WeakCallbackInfo<T>::invokeparameter(NAN_WEAK_PARAMETER_CALLBACK_SIG_ data) {
-  WeakCallbackInfo<T> *cbinfo = unwrapparameter(data);
-  if (isFirstPass) {
-    cbinfo->persistent_.Reset();
-    data.SetSecondPassCallback(invokeparameter<false>);
-  } else {
-    cbinfo->callback_(*cbinfo);
-    delete cbinfo;
-  }
-}
-
-template<typename T>
-template<bool isFirstPass>
-void
-WeakCallbackInfo<T>::invoketwofield(NAN_WEAK_TWOFIELD_CALLBACK_SIG_ data) {
-  WeakCallbackInfo<T> *cbinfo = unwraptwofield(data);
-  if (isFirstPass) {
-    cbinfo->persistent_.Reset();
-    data.SetSecondPassCallback(invoketwofield<false>);
-  } else {
-    cbinfo->callback_(*cbinfo);
-    delete cbinfo;
-  }
-}
-
-template<typename T>
-WeakCallbackInfo<T> *WeakCallbackInfo<T>::unwrapparameter(
-    NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_ data) {
-  WeakCallbackInfo<T> *cbinfo =
-      static_cast<WeakCallbackInfo<T>*>(data.GetParameter());
-  cbinfo->isolate_ = data.GetIsolate();
-  return cbinfo;
-}
-
-template<typename T>
-WeakCallbackInfo<T> *WeakCallbackInfo<T>::unwraptwofield(
-    NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_ data) {
-  WeakCallbackInfo<T> *cbinfo =
-      static_cast<WeakCallbackInfo<T>*>(data.GetInternalField(0));
-  cbinfo->isolate_ = data.GetIsolate();
-  return cbinfo;
-}
-
-#undef NAN_WEAK_PARAMETER_CALLBACK_SIG_
-#undef NAN_WEAK_TWOFIELD_CALLBACK_SIG_
-#undef NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-#undef NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_
-# elif NODE_MODULE_VERSION > NODE_0_12_MODULE_VERSION
-
-template<typename T>
-void
-WeakCallbackInfo<T>::invokeparameter(NAN_WEAK_PARAMETER_CALLBACK_SIG_ data) {
-  WeakCallbackInfo<T> *cbinfo = unwrapparameter(data);
-  cbinfo->persistent_.Reset();
-  cbinfo->callback_(*cbinfo);
-  delete cbinfo;
-}
-
-template<typename T>
-void
-WeakCallbackInfo<T>::invoketwofield(NAN_WEAK_TWOFIELD_CALLBACK_SIG_ data) {
-  WeakCallbackInfo<T> *cbinfo = unwraptwofield(data);
-  cbinfo->persistent_.Reset();
-  cbinfo->callback_(*cbinfo);
-  delete cbinfo;
-}
-
-template<typename T>
-WeakCallbackInfo<T> *WeakCallbackInfo<T>::unwrapparameter(
-    NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_ data) {
-  WeakCallbackInfo<T> *cbinfo =
-       static_cast<WeakCallbackInfo<T>*>(data.GetParameter());
-  cbinfo->isolate_ = data.GetIsolate();
-  return cbinfo;
-}
-
-template<typename T>
-WeakCallbackInfo<T> *WeakCallbackInfo<T>::unwraptwofield(
-    NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_ data) {
-  WeakCallbackInfo<T> *cbinfo =
-       static_cast<WeakCallbackInfo<T>*>(data.GetInternalField1());
-  cbinfo->isolate_ = data.GetIsolate();
-  return cbinfo;
-}
-
-#undef NAN_WEAK_PARAMETER_CALLBACK_SIG_
-#undef NAN_WEAK_TWOFIELD_CALLBACK_SIG_
-#undef NAN_WEAK_PARAMETER_CALLBACK_DATA_TYPE_
-#undef NAN_WEAK_TWOFIELD_CALLBACK_DATA_TYPE_
-#elif NODE_MODULE_VERSION > NODE_0_10_MODULE_VERSION
-
-template<typename T>
-template<typename S>
-void WeakCallbackInfo<T>::invoke(NAN_WEAK_CALLBACK_SIG_ data) {
-  WeakCallbackInfo<T> *cbinfo = unwrap(data);
-  cbinfo->persistent_.Reset();
-  cbinfo->callback_(*cbinfo);
-  delete cbinfo;
-}
-
-template<typename T>
-template<typename S>
-WeakCallbackInfo<T> *WeakCallbackInfo<T>::unwrap(
-    NAN_WEAK_CALLBACK_DATA_TYPE_ data) {
-  void *parameter = data.GetParameter();
-  WeakCallbackInfo<T> *cbinfo =
-      static_cast<WeakCallbackInfo<T>*>(parameter);
-  cbinfo->isolate_ = data.GetIsolate();
-  return cbinfo;
-}
-
-#undef NAN_WEAK_CALLBACK_SIG_
-#undef NAN_WEAK_CALLBACK_DATA_TYPE_
-#else
-
-template<typename T>
-void WeakCallbackInfo<T>::invoke(NAN_WEAK_CALLBACK_SIG_ data) {
-  WeakCallbackInfo<T> *cbinfo = unwrap(data);
-  cbinfo->persistent_.Dispose();
-  cbinfo->persistent_.Clear();
-  cbinfo->callback_(*cbinfo);
-  delete cbinfo;
-}
-
-template<typename T>
-WeakCallbackInfo<T> *WeakCallbackInfo<T>::unwrap(
-    NAN_WEAK_CALLBACK_DATA_TYPE_ data) {
-  WeakCallbackInfo<T> *cbinfo =
-      static_cast<WeakCallbackInfo<T>*>(data);
-  cbinfo->isolate_ = v8::Isolate::GetCurrent();
-  return cbinfo;
-}
-
-#undef NAN_WEAK_CALLBACK_SIG_
-#undef NAN_WEAK_CALLBACK_DATA_TYPE_
-#endif
-
-#if defined(V8_MAJOR_VERSION) && (V8_MAJOR_VERSION > 4 ||                      \
-  (V8_MAJOR_VERSION == 4 && defined(V8_MINOR_VERSION) && V8_MINOR_VERSION >= 3))
-template<typename T, typename M>
-template<typename P>
-inline void Persistent<T, M>::SetWeak(
-    P *parameter
-  , typename WeakCallbackInfo<P>::Callback callback
-  , WeakCallbackType type) {
-  WeakCallbackInfo<P> *wcbd;
-  if (type == WeakCallbackType::kParameter) {
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , parameter);
-    v8::PersistentBase<T>::SetWeak(
-        wcbd
-      , WeakCallbackInfo<P>::template invokeparameter<true>
-      , type);
-  } else {
-    v8::Local<v8::Value>* self_v(reinterpret_cast<v8::Local<v8::Value>*>(this));
-    assert((*self_v)->IsObject());
-    v8::Local<v8::Object> self((*self_v).As<v8::Object>());
-    int count = self->InternalFieldCount();
-    void *internal_fields[kInternalFieldsInWeakCallback] = {0, 0};
-    for (int i = 0; i < count && i < kInternalFieldsInWeakCallback; i++) {
-      internal_fields[i] = self->GetAlignedPointerFromInternalField(i);
-    }
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , 0
-      , internal_fields[0]
-      , internal_fields[1]);
-    self->SetAlignedPointerInInternalField(0, wcbd);
-    v8::PersistentBase<T>::SetWeak(
-        static_cast<WeakCallbackInfo<P>*>(0)
-      , WeakCallbackInfo<P>::template invoketwofield<true>
-      , type);
-  }
-}
-#elif NODE_MODULE_VERSION > IOJS_1_1_MODULE_VERSION
-template<typename T, typename M>
-template<typename P>
-inline void Persistent<T, M>::SetWeak(
-    P *parameter
-  , typename WeakCallbackInfo<P>::Callback callback
-  , WeakCallbackType type) {
-  WeakCallbackInfo<P> *wcbd;
-  if (type == WeakCallbackType::kParameter) {
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , parameter);
-    v8::PersistentBase<T>::SetPhantom(
-        wcbd
-      , WeakCallbackInfo<P>::invokeparameter);
-  } else {
-    v8::Local<v8::Value>* self_v(reinterpret_cast<v8::Local<v8::Value>*>(this));
-    assert((*self_v)->IsObject());
-    v8::Local<v8::Object> self((*self_v).As<v8::Object>());
-    int count = self->InternalFieldCount();
-    void *internal_fields[kInternalFieldsInWeakCallback] = {0, 0};
-    for (int i = 0; i < count && i < kInternalFieldsInWeakCallback; i++) {
-      internal_fields[i] = self->GetAlignedPointerFromInternalField(i);
-    }
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , 0
-      , internal_fields[0]
-      , internal_fields[1]);
-    self->SetAlignedPointerInInternalField(0, wcbd);
-    v8::PersistentBase<T>::SetPhantom(
-        static_cast<WeakCallbackInfo<P>*>(0)
-      , WeakCallbackInfo<P>::invoketwofield
-      , 0
-      , count > 1 ? 1 : kNoInternalFieldIndex);
-  }
-}
-#elif NODE_MODULE_VERSION > NODE_0_12_MODULE_VERSION
-template<typename T, typename M>
-template<typename P>
-inline void Persistent<T, M>::SetWeak(
-    P *parameter
-  , typename WeakCallbackInfo<P>::Callback callback
-  , WeakCallbackType type) {
-  WeakCallbackInfo<P> *wcbd;
-  if (type == WeakCallbackType::kParameter) {
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , parameter);
-    v8::PersistentBase<T>::SetPhantom(
-        wcbd
-      , WeakCallbackInfo<P>::invokeparameter);
-  } else {
-    v8::Local<v8::Value>* self_v(reinterpret_cast<v8::Local<v8::Value>*>(this));
-    assert((*self_v)->IsObject());
-    v8::Local<v8::Object> self((*self_v).As<v8::Object>());
-    int count = self->InternalFieldCount();
-    void *internal_fields[kInternalFieldsInWeakCallback] = {0, 0};
-    for (int i = 0; i < count && i < kInternalFieldsInWeakCallback; i++) {
-      internal_fields[i] = self->GetAlignedPointerFromInternalField(i);
-    }
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , 0
-      , internal_fields[0]
-      , internal_fields[1]);
-    self->SetAlignedPointerInInternalField(0, wcbd);
-    v8::PersistentBase<T>::SetPhantom(
-        WeakCallbackInfo<P>::invoketwofield
-      , 0
-      , count > 1 ? 1 : kNoInternalFieldIndex);
-  }
-}
-#elif NODE_MODULE_VERSION > NODE_0_10_MODULE_VERSION
-template<typename T, typename M>
-template<typename P>
-inline void Persistent<T, M>::SetWeak(
-    P *parameter
-  , typename WeakCallbackInfo<P>::Callback callback
-  , WeakCallbackType type) {
-  WeakCallbackInfo<P> *wcbd;
-  if (type == WeakCallbackType::kParameter) {
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , parameter);
-    v8::PersistentBase<T>::SetWeak(wcbd, WeakCallbackInfo<P>::invoke);
-  } else {
-    v8::Local<v8::Value>* self_v(reinterpret_cast<v8::Local<v8::Value>*>(this));
-    assert((*self_v)->IsObject());
-    v8::Local<v8::Object> self((*self_v).As<v8::Object>());
-    int count = self->InternalFieldCount();
-    void *internal_fields[kInternalFieldsInWeakCallback] = {0, 0};
-    for (int i = 0; i < count && i < kInternalFieldsInWeakCallback; i++) {
-      internal_fields[i] = self->GetAlignedPointerFromInternalField(i);
-    }
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , 0
-      , internal_fields[0]
-      , internal_fields[1]);
-    v8::PersistentBase<T>::SetWeak(wcbd, WeakCallbackInfo<P>::invoke);
-  }
-}
-#else
-template<typename T>
-template<typename P>
-inline void PersistentBase<T>::SetWeak(
-    P *parameter
-  , typename WeakCallbackInfo<P>::Callback callback
-  , WeakCallbackType type) {
-  WeakCallbackInfo<P> *wcbd;
-  if (type == WeakCallbackType::kParameter) {
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , parameter);
-    persistent.MakeWeak(wcbd, WeakCallbackInfo<P>::invoke);
-  } else {
-    v8::Local<v8::Value>* self_v(reinterpret_cast<v8::Local<v8::Value>*>(this));
-    assert((*self_v)->IsObject());
-    v8::Local<v8::Object> self((*self_v).As<v8::Object>());
-    int count = self->InternalFieldCount();
-    void *internal_fields[kInternalFieldsInWeakCallback] = {0, 0};
-    for (int i = 0; i < count && i < kInternalFieldsInWeakCallback; i++) {
-      internal_fields[i] = self->GetPointerFromInternalField(i);
-    }
-    wcbd = new WeakCallbackInfo<P>(
-        reinterpret_cast<Persistent<v8::Value>*>(this)
-      , callback
-      , 0
-      , internal_fields[0]
-      , internal_fields[1]);
-    persistent.MakeWeak(wcbd, WeakCallbackInfo<P>::invoke);
-  }
-}
-#endif
-
-#endif  // NAN_WEAK_H_
t;garbeam@wmii.de> 2006-07-10 18:35:39 +0200 committer Anselm R. Garbe <garbeam@wmii.de> 2006-07-10 18:35:39 +0200 added new stuff' href='/acidbong/suckless/dwm/commit/draw.c?h=5.8&id=8a34fa50f75f4d6d8af234ac0c4f6d40b988d700'>8a34fa5 ^
9e8b325 ^


8a34fa5 ^

9e8b325 ^
8a34fa5 ^


8a34fa5 ^
9e8b325 ^







8a34fa5 ^



9e8b325 ^






650a1fb ^
9e8b325 ^

8a34fa5 ^
9e8b325 ^
8a34fa5 ^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158